【发布时间】:2021-02-09 16:01:02
【问题描述】:
由于某种原因,只有 adminConfirmSignup 给出了用户池不存在错误。 CognitoUser 没有给出该错误。 请参考以下代码:
let cognitoUser = new AmazonCognitoIdentity.CognitoUser(userData)
var cognitoAdmin = new AWS.CognitoIdentityServiceProvider({ region: process.env.COGNITO_POOL_REGION! });
await cognitoAdmin.adminConfirmSignUp(confirmParams, async(err, data) => { //Only this gives the user pool does not exist error
if (err) {
console.log(`This is the admin user confirm error ---> ${err}`)
} else {
console.log(`Entered else`);
await cognitoUser.authenticateUser(authenticationDetails, {
onSuccess: async(result) => {
cognitoUser.changePassword(resetDetails.currentPassword, resetDetails.newPassword, (err, data) => {
if (err) {
reject(err);
} else {
console.log(`This is the success response of cognito change password -----> ${JSON.stringify(data)}`);
resolve(data);
}
})
},
onFailure: (error) => {
console.log(`This is the onFailure error ----> ${JSON.stringify(error)}`);
reject(error);
}
})
}
})
如果我使用 CognitoUser 方法(当我手动确认用户并仅使用 cognitoUser 方法进行身份验证和重置密码时),密码重置有效。
【问题讨论】:
标签: javascript typescript amazon-cognito serverless-framework