使用 CognitoUser (npm: amazon-cognito-identity-js) 仅验证“代码”
Posted
技术标签:
【中文标题】使用 CognitoUser (npm: amazon-cognito-identity-js) 仅验证“代码”【英文标题】:Verifying only "code" using CognitoUser (npm: amazon-cognito-identity-js) 【发布时间】:2021-09-13 00:48:48 【问题描述】:我目前在实现“忘记密码”功能时使用以下内容, 但是我只想先验证“验证码”,然后再验证“密码” 但现在它希望参数 new password 和 code 同时验证和更新密码。
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 );
;
【问题讨论】:
【参考方案1】:对于这种行为,您无能为力。这就是 Cognito 中 API 端点的工作方式。 ConfirmForgotPassword 端点将代码和新密码作为强制参数。响应将告诉您密码是否不正确(如果它与配置的规则不匹配)或代码是否无效/过期。
代码仅传送到终端设备。这意味着您永远不会看到它,因此无法判断它是否正确。这就是 Cognito 会做的事情。
【讨论】:
谢谢,我还观察到,当我们创建 CognitoUser 实例时,如果池中甚至不存在电子邮件/用户名,它不会引发错误,它会继续进行以上是关于使用 CognitoUser (npm: amazon-cognito-identity-js) 仅验证“代码”的主要内容,如果未能解决你的问题,请参考以下文章
解码Amaze UI前端框架这么多,为什么还要开发Amaze UI?