Tim*_*amm 1 authentication flutter aws-amplify
Error: The argument type 'Map<String, String>' can't be assigned to the parameter type 'Map<CognitoUserAttributeKey, String>'.
Run Code Online (Sandbox Code Playgroud)
当我查找错误时,没有任何相关信息。
在 AWS 文档中,他们推荐了此代码,这会导致错误:
Map<String, String> userAttributes = {
'email': 'email@domain.com',
'phone_number': '+15559101234',
// additional attributes as needed
};
SignUpResult res = await Amplify.Auth.signUp(
username: 'myusername',
password: 'mysupersecurepassword',
options: CognitoSignUpOptions(
userAttributes: userAttributes
)
);
Run Code Online (Sandbox Code Playgroud)
解决方案非常简单。
您必须更改 Map 的构造函数:
Map<CognitoUserAttributeKey, String> userAttributes = {
CognitoUserAttributeKey.email: 'email@email.com',
CognitoUserAttributeKey.phoneNumber: '+15559101234',
};
void registerAccount() async {
await Amplify.Auth.signUp(
username: 'myusername',
password: 'mysupersecurepassword',
options: CognitoSignUpOptions(
userAttributes: userAttributes)
);
}
Run Code Online (Sandbox Code Playgroud)
这解决了问题。
| 归档时间: |
|
| 查看次数: |
647 次 |
| 最近记录: |