请求Facebook访问令牌时有400个错误请求

Jun*_*per 4 asp.net facebook

我在请求访问令牌时从Facebook收到400错误请求错误.我的return_uri包含一个导致问题的查询字符串参数.我编写了return_uri但我仍然得到了错误.谁能帮我这个?

以下是我发送给Facebook的请求:

"https://graph.facebook.com/oauth/access_token?client_id=IDb&client_secret=SECRET&redirect_uri=http%3a%2f%2fexample.com%2fOAuthHttpHandler.ashx%3fReturnUrl%3d%2fpage.aspx&code=CODE"

我收到了"验证验证码时出错".错误信息.

我做了一点挖掘,发现下面的redirect_uri工作正常:

"http://example.com/OAuthHttpHandler.ashx?ReturnUrl=page.aspx"

但是,如果我通过"/secure/page.aspx"的返回URL验证失败.我试过编码正斜杠但没有运气.

Joe*_*ore 5

不幸的是,Facebook Oauth实现不能很好地处理return_uri查询字符串中的url参数,即使它们被正确编码也是如此.fb开发人员论坛中有几个讨论此问题的主题:

http://forum.developers.facebook.net/viewtopic.php?pid=237845 http://forum.developers.facebook.net/viewtopic.php?pid=239866 http://forum.developers.facebook.net/ viewtopic.php?PID = 255231

在修复它们之前,你必须使用另一种传递状态的方法:session,cookie或在URL中构建一个简单的页面特定标识符.