0

假设在我的应用程序中;我只想为经过验证的用户提供部分功能。我对如何检查当前用户是否经过验证感到困惑。我检查了 Amplify docs 是否有抖动,但找不到合适的方法。

4

1 回答 1

0

请参阅此线程: https ://github.com/aws-amplify/amplify-flutter/issues/581

它说:

iOS isSignupComplete 由 AuthSignUpResult.nextStep 确定。当 nextStep != done 时,前者总是错误的。

一旦注册请求成功完成, Android isSignupComplete 就会被标记为 true。

虽然 isSignupComplete 可能在两个平台之间不一致,但检查 SignUpResult.nextStep 应该足以确定用户是否已完成注册确认。

E.g.

SignUpResult createAccountResult = await Amplify.Auth.signUp(
  username: email.text,
  password: password.text,
  options: CognitoSignUpOptions(userAttributes: {'email': email.text}));

if (res.nextStep.signUpStep == 'CONFIRM_SIGN_UP_STEP') {
  // continue to confirm sign up step
}

if (res.nextStep.signUpStep == 'DONE') {
  // complete sign up
}

这适用于原生平台,但通过检查 Flutter 中的 signUpStep 应该是相同的

于 2021-11-13T20:22:12.783 回答