Flutter AWS Auth:如何获取自定义用户属性?
Flutter AWS Auth: How to get custom user attribute?
如何在 Flutter 中获取用户的 cognito 自定义用户属性?
await Amplify.Auth.fetchUserAttributes();
returns只有用户属性,没有自定义属性。
(我已将该属性添加到架构中,我确信它就在那里,在 AWS UI 中它就在那里。)
fetchUserAttributes 函数returns AuthUserAttributes 列表,包括您定义的自定义属性。当您拥有该列表时,您可以遍历它,并获得您想要的属性。
const res = await Amplify.Auth.fetchUserAttributes();
for (var attr in res) {
if (attr.userAttributeKey == CognitoUserAttributeKey.custom('customAttr') {
customAttr = attr.value;
}
}
如果自定义属性不存在,请确保用户拥有该属性。
问题是这些自定义属性在创建后默认情况下不可读或可写。
如需进一步说明,请查看 https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-attributes.html#user-pool-settings-attribute-permissions-and-scopes
转到 cognito - 应用程序客户端 - 详细信息 - 最底部更改权限
如何在 Flutter 中获取用户的 cognito 自定义用户属性?
await Amplify.Auth.fetchUserAttributes();
returns只有用户属性,没有自定义属性。
(我已将该属性添加到架构中,我确信它就在那里,在 AWS UI 中它就在那里。)
fetchUserAttributes 函数returns AuthUserAttributes 列表,包括您定义的自定义属性。当您拥有该列表时,您可以遍历它,并获得您想要的属性。
const res = await Amplify.Auth.fetchUserAttributes();
for (var attr in res) {
if (attr.userAttributeKey == CognitoUserAttributeKey.custom('customAttr') {
customAttr = attr.value;
}
}
如果自定义属性不存在,请确保用户拥有该属性。
问题是这些自定义属性在创建后默认情况下不可读或可写。
如需进一步说明,请查看 https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-attributes.html#user-pool-settings-attribute-permissions-and-scopes 转到 cognito - 应用程序客户端 - 详细信息 - 最底部更改权限