Как исправить ошибку «Клиент пытался написать неавторизованный атрибут» в Cognito? в реагирующем собственном пользовательском интерфейсе (работает нормально с экраном регистрации по умолчанию)) - PullRequest
0 голосов
/ 09 апреля 2020

Я настраиваю интерфейс для экрана регистрации. Я получил ошибку, когда Клиент попытался написать неавторизованный атрибут . Здесь я использовал атрибуты, как указано ниже.

Примечание: До того, как я использовал экраны по умолчанию с перечисленными ниже атрибутами из aws -amplify-реакции-native. Теперь также у меня есть те же атрибуты, но он не смог подписаться.

Атрибуты:

AuthClass - signUp attrs:', [ { Name: 'name', Value: 'Test' },
  { Name: 'email', Value: 'XXXXX@domain.com' },
  { Name: 'phonenumber', Value: '+XXXXXXX' } ]

Ошибка:

Hub - Dispatching to auth with ', { event: 'signUp_failure',
  data: 
   { code: 'NotAuthorizedException',
     name: 'NotAuthorizedException',
     message: 'A client attempted to write unauthorized attribute' },
  message: 'xxx@domail.com failed to signup' }

Мой пользовательский экран регистрации

class CustomSignUp expends Component {

signUp = () => {
 const { email, password, phonenumber, userName, lastname, validation } = this.state;
   Auth.signUp({
    username: email,
    password,
    attributes: {
        name: userName,
        email: email,          
        phonenumber: phonenumber,
         // optional - E.164 number convention
        // other custom attributes
    },
    })
    .then(data => console.warn("ddddddddd"+ data))
    .catch(err =>{
      console.warn('errrr' + err)
      validation.messages.push(err.message);
    }
    );

render () {
  return (
   <Button onPress={this.signUp}>SignUP</Button>
 )
}
}

Мой аутентификатор:

<Authenticator>
   <CustomSignUP override={'SignUp'}
</Authenticator>

1 Ответ

1 голос
/ 23 апреля 2020

Вы должны получить правильное имя стандартного / пользовательского атрибута.

Имя атрибута можно найти на следующей странице:

https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-attributes.html#cognito -user-pools-standard -атрибуты

в вашем случае номер телефона должен быть заменен на номер телефона.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...