访问令牌的Facebook服务器端流问题:“验证验证码时出错”。

时间:2011-03-04 03:22:40

标签: c# asp.net facebook oauth

我正在尝试从Facebook接收访问令牌。我几个晚上一直在打击我的脑袋,并希望另一双眼睛可以帮助我!

Facebook https://developers.facebook.com/docs/authentication/上记录的服务器端流程表明访问令牌网址应为此格式。

https://graph.facebook.com/oauth/access_token?
     client_id=YOUR_APP_ID&redirect_uri=YOUR_URL&
     client_secret=YOUR_APP_SECRET&code=THE_CODE_FROM_ABOVE

我的已清理网址是(修改了client_id,client_secret和代码的值):

https://graph.facebook.com/oauth/access_token?client_id=000000000000000&redirect_uri=http%3a%2f%2flocalhost%3a57260%2f&client_secret=00000aa0a000a0a000000aaaa0000a00&code=0.aAaAaa_aaAaaaAAaAaA_aa__.0000.0000000000-0000000000|aAAa0AAaa0AA0aAAAAaAA0Aa0a0

我收到的错误是

{
   "error": {
      "type": "OAuthException",
      "message": "Invalid verification code format."
   }
}

我看过多个帖子提到redirect_uri需要以斜杠(“/”)结尾,而且我已经提供了。 URL中唯一让我感到怀疑的是端口号作为我的redirect_uri http://localhost:57260/,因为这是Visual Studio将我的开发地址分配为。这与我的网站网址匹配 Facebook应用程序设置。

提前致谢!

1 个答案:

答案 0 :(得分:15)

我遇到的最常见错误是redirect_uri必须在两个Url中完全匹配:

  1. https://www.facebook.com/dialog/oauth? CLIENT_ID = YOUR_APP_ID&安培; REDIRECT_URI = YOUR_URL&安培;范围=电子邮件,read_stream
  2. https://graph.facebook.com/oauth/access_token? CLIENT_ID = YOUR_APP_ID&安培; REDIRECT_URI = YOUR_URL&安培; client_secret = YOUR_APP_SECRET&安培;代码= THE_CODE_FROM_ABOVE
  3. 您的示例return_uri网址看起来太短(除非您对网站的根目录进行身份验证)。