Ruby 与新浪微博对接,一直报 redirect_uri_mismatch 的错误

dxdxdx · 2012年01月28日 · 最后由 lisafangfang 回复于 2019年05月15日 · 15634 次阅读

如题所示,这个问题困扰我两天了,google,bing,baidu 都试过了,一直没有找到解决的方法,对接的 url 如下: https://api.weibo.com/oauth2/authorize?client_id=1771041510&redirect_uri=http%3A%2F%2Ftest.dx.com%3A3000%2Fdocks%2Fweibo&response_type=code redirect_uri 转码前的值是:http://test.dx.com:3000/docks/weibo redirect_uri 的格式没有问题,是正常转码 我没有用 weibo 这个 gem 去做,因为发现它不支持 oauth2.0

哪位同学做过新浪微博的对接,指导一下,谢谢!

你可以用 oauth 的 api,不要用 oauth2.0

#1 楼 @master 谢谢问题解决了,仍然用的是 oauth2.0

顺便说一下自己的解决过程,首先感叹一下,ruby-china 是块福地,每次发贴后都会出现灵感,让问题得到解决。 我前面创建的那个应用 (app key 是 1771041510) 按新浪的说法是一个站内应用,要命的是你无法给一个站内应用设置回调地址,但诡异的是如果你用 weibo 这个 gem 的话,你这个回调地址 (在 oauth 中叫 oauth_callback 区别于 oauth2.0 的 redirect_uri) 随便设置成什么都不会造成连接错误,觉得自己确实有点 2,就是想用 oauth2.0,哈哈,还好刚才脑袋转了一下弯,重新创建了一个应用按新浪的说法就是"其他应用",丫的这个“其他应用”里正好有个地方可以设置回调地址,于是设置成http://test.dx.com:3000,就成了

之前集成过 ShareSDK 的,他们那边做分享是挺不错的,集成起来很方面简单,对于这个错误问题,是需要你那边把在微博上注册的应用的回调地址填写的跟初始化微博的回调地址一致

需要 登录 后方可回复, 如果你还没有账号请 注册新账号