【发布时间】:2012-01-04 15:40:00
【问题描述】:
我在验证 facebook 用户时遇到了一个非常奇怪的问题。基本上它适用于 90% 的用户,但对于 10% 的用户,我总是收到错误“验证验证码错误”。他们尝试从不同的浏览器、操作系统登录,但总是遇到同样的错误。
我都是照本宣科的:
https://www.facebook.com/dialog/oauth?scope=email%2C+user_birthday%2C+publish_stream%2C+publish_actions%2C+user_hometown&redirect_uri=http%3A%2F%2Fapps.facebook.com%2Fbetchallenge%2F&client_id=.....
然后我从响应中获取一个代码参数并发送新的请求:
https://graph.facebook.com/oauth/access_token?client_secret=...&redirect_uri=http%3A%2F%2Fapps.facebook.com%2Fbetchallenge%2F&code=...&client_id=212564568790055
我遵守了所有的规则,redirect_uris 是一样的,它们没有像 ?.... 这样的特殊字符。
有什么想法吗?
【问题讨论】:
-
我解决了这个问题。问题在于在他们的 facebook 帐户中设置通过 HTTPS 连接到 facebook 的用户。在这种情况下,您必须向 facebook 发送 https 请求,而不是 http(尽管在我的示例中它是 https,实际上我没有使用 https)。
-
最好将其发布为答案,这样来自 Google 的人就会清楚您的问题已解决。
标签: facebook api oauth oauth-2.0