won*_*lik 7 facebook facebook-graph-api facebook-authentication facebook-login
我正在尝试使用Facebook来验证用户身份.除了Ajax调用之外它工作正常.大多数时候它只发送旧令牌,我得到:
{"error":{"message":"This authorization code has been used.","type":"OAuthException","code":100}}
所以我尝试做的是用每个ajax调用
FB.getLoginStatus(function(response) {
        if (response.status === 'connected') {
            return  fn();
            ...
这没用,所以我添加了:true作为getLoginStatus的参数以防止缓存:
FB.getLoginStatus(function(response) {
        if (response.status === 'connected') {
            console.log('connected');
            fn();
        } else if (response.status === 'not_authorized') {
            console.log('not_authorized);
        } else {
            console.log('not_logged_in');
        }
    },true);
大!除非它非常缓慢.难道我做错了什么?我可以在每次操作后获得新的令牌,所以我不需要在下一次之前等待吗?
谢谢你
dac*_*gen 16
这是Facebook所说的:
"对OAuth授权码的新安全限制.我们只允许一次授权代码交换访问令牌,并要求在创建后的10分钟内将其交换为访问令牌.这符合OAuth 2.0规范从一开始就说"授权代码必须是短期和单次使用".有关更多信息,请查看我们的身份验证文档.
解决这个问题的方法是使用扩展访问令牌api:
https://developers.facebook.com/docs/howtos/login/extending-tokens/
| 归档时间: | 
 | 
| 查看次数: | 30801 次 | 
| 最近记录: |