Я немного новичок в этом. У меня есть веб-приложение, основанное на реакции, и мы использовали аутентификацию с использованием AWS Cognito. Я использовал amazon-cognito-identity-js
для регистрации пользователей в пуле пользователей и для входа в систему.
Теперь я пытаюсь заменить эту библиотеку на aws amplify auth
из-за ее чистого интерфейса. Но я не хочу проходить процесс установки (усиление init и все остальное), я хочу использовать его так же, как я использовал amazon-cognito-identity-js
.
Это то, что я сделал до сих пор,
Я настроил Amplify Auth
в моем файле app.js
-
import Amplify from 'aws-amplify';
Amplify.configure({
Auth: {
// REQUIRED only for Federated Authentication - Amazon Cognito Identity Pool ID
identityPoolId: 'my id pool',
// REQUIRED - Amazon Cognito Region
region: 'my-region',
// OPTIONAL - Amazon Cognito User Pool ID
userPoolId: 'my-userpool',
// OPTIONAL - Amazon Cognito Web Client ID (26-char alphanumeric string)
userPoolWebClientId: 'my app client',
// OPTIONAL - Enforce user authentication prior to accessing AWS resources or not
mandatorySignIn: true,
// OPTIONAL - Manually set the authentication flow type. Default is 'USER_SRP_AUTH'
authenticationFlowType: 'USER_SRP_AUTH'
}
});
Вот что я сделал, чтобы зарегистрироваться в моем Registration
компоненте -
const { username, password, email, name } = this.state;
try {
const result = await Auth.signUp({
username,
password,
attributes: {
'name': name,
'email': email,
'phone_number': '',
},
});
this.setState({showVerificationCode: true});
} catch(e) {
console.log(e);
}
Теперь, когда я пытаюсь зарегистрировать пользователя в моем пуле пользователей, он создается, и письмо с подтверждением также было отправлено. Но на стороне клиента я получаю эту ошибку -
Может кто-нибудь сказать мне, если возможно, что я пытаюсь? Как вы думаете, я могу использовать только Auth
из aws amplify
в изоляции на стороне клиента без какого-либо облака или чего-либо еще, чтобы просто зарегистрироваться и войти в пул пользователей?