使用 CognitoUser(npm:amazon-cognito-identity-js)仅验证 "code"
Verifying only "code" using CognitoUser (npm: amazon-cognito-identity-js)
我目前在实现“忘记密码”功能时使用了以下内容,
但是我只想先验证“验证码”,再验证“密码”
但现在它需要参数新密码和代码同时验证和更新密码。
getUser(values.email).confirmPassword(values.code, values.password, {
onSuccess: (data) => {
console.log("onSuccess", data);
setStage(2);
},
onFailure: (data) => {
console.log("onFail", data);
return;
},
});
const getUser = (Username) => {
return new CognitoUser({ Username, Pool });
};
对于这种行为,您无能为力。这就是 Cognito 中 API 端点的工作原理。 ConfirmForgotPassword 端点将代码和新密码都作为强制参数。响应将告诉您密码是否错误(如果它与配置的规则不匹配)或者密码是否为 invalid/expired.
代码仅传送到终端设备。这意味着您永远不会看到它,因此无法判断它是否正确。这就是 Cognito 会做的事情。
我目前在实现“忘记密码”功能时使用了以下内容, 但是我只想先验证“验证码”,再验证“密码” 但现在它需要参数新密码和代码同时验证和更新密码。
getUser(values.email).confirmPassword(values.code, values.password, {
onSuccess: (data) => {
console.log("onSuccess", data);
setStage(2);
},
onFailure: (data) => {
console.log("onFail", data);
return;
},
});
const getUser = (Username) => {
return new CognitoUser({ Username, Pool });
};
对于这种行为,您无能为力。这就是 Cognito 中 API 端点的工作原理。 ConfirmForgotPassword 端点将代码和新密码都作为强制参数。响应将告诉您密码是否错误(如果它与配置的规则不匹配)或者密码是否为 invalid/expired.
代码仅传送到终端设备。这意味着您永远不会看到它,因此无法判断它是否正确。这就是 Cognito 会做的事情。