1

我刚开始在我的应用程序中使用 AWS Cognito,我按照说明安装了 Amplify 并创建了用户池和身份池并设置了所有内容。我创建了一个注册表单,并在没有问题的情况下注册Aut.signUp()并确认了电子邮件。

但是当我尝试登录时,我输入了我的凭据并得到 NotAuthorizedException,不正确的用户名或密码。

我是这样登录的:

Auth.signIn(user.Username, user.Password)
    .then((res) => {
        AsyncStorage.setItem('token', JSON.stringify(user))
        .then(res =>{
            console.log('saved')
        })  
        .catch(err=>{
            console.log(err)
        })

无论我在输入字段中输入什么,我都会收到此错误。我刚开始使用 Amazon AWS 并不能真正想到问题

4

1 回答 1

7

所以在尝试解决这个问题几天后,我找到了解决方案。

默认情况下,在 AWS 配置中,身份验证流类型设置为 USER_SRP_AUTH 您需要做的是在您的 AWS 配置中放置: authenticationFlowType: 'USER_PASSWORD_AUTH',

然后转到 amazon cognito 面板 -> 用户池 -> 应用程序客户端 -> 显示详细信息 -> 启用基于应用程序的身份验证 (USER_PASSWORD_AUTH) 的用户名-密码(非 SRP)流。

于 2019-11-23T09:07:56.383 回答