检查以下几个问题:
检查是否已经在应用程序中使用正确的Cognito身份池ID。
检查IAM用户是否已经拥有正确的Cognito身份池权限。
检查令牌是否已经过期,以及如何获得新的Cognito登录令牌。
以下是一个可能会导致无效登录令牌错误的示例代码片段:
var cognitoidentity = new AWS.CognitoIdentity();
var loginParams = {
IdentityPoolId: 'IDENTITY_POOL_ID',
// other parameters
};
cognitoidentity.getId(loginParams, function(err, data) {
if (!err) {
var params = {
IdentityPoolId: 'IDENTITY_POOL_ID',
Logins: {
'cognito-idp.us-west-2.amazonaws.com/us-west-2_COGNITO_USER_POOL_ID': data.TokenId
}
};
cognitoidentity.getCredentialsForIdentity(params, function(err, data) {
if (!err) {
// use data.Credentials to call AWS service APIs
} else {
console.log('Error getting credentials: ' + err);
}
});
} else {
console.log('Error retrieving identity: ' + err);
}
});
如果您在应用程序中遇到无效登录令牌错误,请尝试使用以上代码片段的一部分,并更改其中的参数和配置,以匹配您的应用程序的需求。