我一直在写一个概念证明,用户使用Facebook登录,我使用该令牌获取认证凭证。
我让它工作了,它已经停止了。
试图找出它,我在对象日志语句中看到expired:true
。
我在我的脸书应用程序或身份池中看不到会导致这种情况的任何设置,我没有改变任何内容。
CODE:
AWS.config.region = "us-east-1";
AWS.config.update({
credentials: new AWS.CognitoIdentityCredentials({
IdentityPoolId: 'us-east-1:8fd8.....',
Logins: {
'graph.facebook.com': userService.getFbToken()
},
})
});
$log.info(AWS.config.credentials);
s3 = new AWS.S3();
日志消息:
NotAuthorizedException: Missing credentials in config
对象内容:
CognitoIdentityCredentials {expired: true, expireTime: null, accessKeyId: undefined, sessionToken: undefined, params: Object…}
accessKeyId:undefined
cognito:features.constructor
data:null
expireTime:null
expired:true
identityId:null
params:
Object
IdentityPoolId:"us-east-1:8fd8....."
Logins:
Object
graph.facebook.com:
"CAAFJdF1QKZBYBAKrTetOsBczjINTF......."
__proto__:
Object
RoleSessionName:"web-identity"
我真的过期了吗?我刚登录测试。之前我提到过我的应用程序,我想知道设置是否有问题?
有什么建议吗?
更新2016-09-06: 我放弃了这个,因为我正在做的事情变得不值得。如果我回到它并弄明白,我会再次更新。
答案 0 :(得分:0)
我遇到了类似的问题,我的facebook AWS cognito突然停止工作并给了我错误" NotAuthorizedException:无效的登录令牌。令牌已过期。"。我花了几天时间浏览论坛,无法在我的代码中找到错误的原因。最后,当我创建一个新的Facebook应用程序并更改我的FB应用程序ID时,问题就解决了。我认为它与你的Facebook应用程序设置有关,也许它是一个测试应用程序,我的情况。