AWS Cognito SignUP 在节点 js 中使用自定义属性导致错误
AWS Cognito SignUP with custom Attributes in node js causing error
我正在尝试使用 AWS 用户池通过 lambda 函数构建注册,我在其中添加了一个名为 type 的自定义属性。
当我通过注册发送类型值时,出现错误“客户端试图写入未经授权的属性”。
我正在使用 'amazon-cognito-identity-js' 包来保存数据。
这是我的代码片段
const attributeList = [];
attributeList.push(new AmazonCognitoIdentity.CognitoUserAttribute({Name:"name",Value:user.username}));
attributeList.push(new AmazonCognitoIdentity.CognitoUserAttribute({Name:"custom:type",Value:'asd'}));
attributeList.push(new AmazonCognitoIdentity.CognitoUserAttribute({Name:"gender",Value:user.gender}));
attributeList.push(new AmazonCognitoIdentity.CognitoUserAttribute({Name:"email",Value:user.email}));
userPool.signUp(user.email, user.password, attributeList, null, function(err, result){
if (err) {
return reject(err);
}
return resolve(result);
});**strong text**
添加新属性后,您应该select此应用程序客户端可以读取和写入的用户属性。
步骤:
- 转到您的 Cognito 用户池页面
- 点击左侧菜单中的“App Client”
- 点击“设置属性读写权限”
- 确保您为所需属性添加了必要的(read/write)权限
除了上面的回答,有时自定义属性可能需要时间才能反映在客户端下。因为我在 15 分钟左右注意到它,但 1 小时后它就在那里了。
我正在尝试使用 AWS 用户池通过 lambda 函数构建注册,我在其中添加了一个名为 type 的自定义属性。 当我通过注册发送类型值时,出现错误“客户端试图写入未经授权的属性”。
我正在使用 'amazon-cognito-identity-js' 包来保存数据。 这是我的代码片段
const attributeList = [];
attributeList.push(new AmazonCognitoIdentity.CognitoUserAttribute({Name:"name",Value:user.username}));
attributeList.push(new AmazonCognitoIdentity.CognitoUserAttribute({Name:"custom:type",Value:'asd'}));
attributeList.push(new AmazonCognitoIdentity.CognitoUserAttribute({Name:"gender",Value:user.gender}));
attributeList.push(new AmazonCognitoIdentity.CognitoUserAttribute({Name:"email",Value:user.email}));
userPool.signUp(user.email, user.password, attributeList, null, function(err, result){
if (err) {
return reject(err);
}
return resolve(result);
});**strong text**
添加新属性后,您应该select此应用程序客户端可以读取和写入的用户属性。
步骤:
- 转到您的 Cognito 用户池页面
- 点击左侧菜单中的“App Client”
- 点击“设置属性读写权限”
- 确保您为所需属性添加了必要的(read/write)权限
除了上面的回答,有时自定义属性可能需要时间才能反映在客户端下。因为我在 15 分钟左右注意到它,但 1 小时后它就在那里了。