出现此问题的原因可能是在进行身份验证时,未正确设置 Cognito 客户端的 ID 和密钥。您可以尝试使用以下示例代码来重新配置客户端信息:
const AWS = require('aws-sdk');
AWS.config.region = 'REGION';
const cognito = new AWS.CognitoIdentityServiceProvider({
apiVersion: '2016-04-18',
region: 'REGION'
});
const clientId = 'YOUR_APP_CLIENT_ID';
const clientSecret = 'YOUR_APP_CLIENT_SECRET';
const refreshToken = 'YOUR_REFRESH_TOKEN';
const params = {
AuthFlow: 'REFRESH_TOKEN_AUTH',
ClientId: clientId,
ClientSecret: clientSecret,
RefreshToken: refreshToken
};
cognito.initiateAuth(params, function(err, data) {
if (err) {
console.log(err, err.stack);
} else {
console.log(data);
}
});
在上面的示例中,请确保将“YOUR_APP_CLIENT_ID”、“YOUR_APP_CLIENT_SECRET”和“YOUR_REFRESH_TOKEN”替换为您自己的信息。通过使用正确的客户端信息重新初始化 CognitoIdentityServiceProvider 对象,您应该能够成功刷新令牌,从而避免 invalid_client 错误。