我使用Facebook login dialogue登录我的网站(使用PHP SDK),但是新用户第一次授权应用并且第二次尝试成功时总是失败
我发现在用户授权我的应用后,state
参数没有在重定向网址中传回给我,导致我的应用中的CSRF检查失败(在SDK中的getCode()
。对于它的价值,包括code
参数。
但是,如果他们第二次关注对话链接,则按预期工作 - 无需进一步授权点击,并且重定向网址正确,同时包含state
和code
个参数。< / p>
所以我的问题是:
如何在授权后找出重定向导致state
丢失的原因?
作为参考,我的对话链接如下所示:
https://www.facebook.com/dialog/oauth?client_id=MY_CLIENT_ID&redirect_uri=http%3A%2F%2Fwww.mysite.com%2Fconnect&state=4f246904818d682a742c59cbbced829c&scope=email%2Cuser_likes
答案 0 :(得分:0)
正如Igy所说,这是Facebook方面的一个错误,现在修复:https://developers.facebook.com/bugs/587975411230466