node.js - 使用 Amazon Cognito 将用户添加到用户池
问题描述
我试图了解 Amazon Cognito 的工作原理,但文档有点模糊。我发现几个 API 似乎做类似的事情,两个来自亚马逊,第三个在 Git Hub 上似乎很受欢迎。最后一个似乎也是为浏览器编写的,虽然它确实有效,但它需要 polyfill,这增加了我想避免的复杂性。
我想使用的是https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/CognitoIdentity.html 但这似乎是所有用户中最不友好的。有足够的文档,它只是不好。
听起来您使用该函数getId()
来创建用户,但是对“帐户 ID”之类的参数的引用是没有意义的。
我实际上需要此 API 中的哪些函数来将用户添加到我的用户池?我什至应该使用这个 API 吗?
解决方案
如果您希望在您的 Web 应用程序客户端上使用它,您可以查看 using amazon-cognito-identity-js
instead此处记录的内容。
下面的示例用法signUp
:
const AmazonCognitoIdentity = require('amazon-cognito-identity-js')
var poolData = {
UserPoolId : '...', // Your user pool id here
ClientId : '...' // Your client id here
};
var userPool = new AmazonCognitoIdentity.CognitoUserPool(poolData);
var attributeList = [];
var dataEmail = {
Name : 'email',
Value : 'email@mydomain.com'
};
var dataPhoneNumber = {
Name : 'phone_number',
Value : '+15555555555'
};
var attributeEmail = new AmazonCognitoIdentity.CognitoUserAttribute(dataEmail);
var attributePhoneNumber = new AmazonCognitoIdentity.CognitoUserAttribute(dataPhoneNumber);
attributeList.push(attributeEmail);
attributeList.push(attributePhoneNumber);
userPool.signUp('username', 'password', attributeList, null, function(err, result){
if (err) {
alert(err.message || JSON.stringify(err));
return;
}
var cognitoUser = result.user;
console.log('user name is ' + cognitoUser.getUsername());
});
推荐阅读
- java - (谓词)或(字符串)
- vue.js - Vue改变图标点击按钮
- python - BeautifulSoup 从变量中提取 json 作为没有 TAG 的字符串
- dart - 如何在 Flutter 中创建多个 DropdownButton?
- mysql - 试图在 mysql 中编辑 my.cnf 文件,但它不起作用
- firebase - 如何为每个用户/组的集合设置 Firebase Firestore 安全性?
- ruby-on-rails - 具有多态关联的未知属性
- ansible - ssh 密钥的 Ansible 手册:一对一、一对多、多对一
- php - AngularJS控制器未在路由视图中显示数据库中的数据
- json - 用该数组的第一个元素替换对象中的每个数组