adminUpdateUserAttributes

adminUpdateUserAttributes

我无法让adminUpdateUserAttributes使Cognito正常工作。 cli可以正常工作,我可以让用户添加/更改它们不是所希望的,但希望看到它能正常工作。

我正在对lambda函数使用AWS托管策略AmazonCognitoPowerUser,并且lambda正在触发,我是否缺少某些听起来听起来很简单的东西,但它却无法正常工作。

还有一种方法可以在不自行创建的情况下获得默认的创建日期。

const AWS = require('aws-sdk');
const cognitoidentityserviceprovider =  new AWS.CognitoIdentityServiceProvider();

exports.handler = async (event) => {
    cognitoidentityserviceprovider.adminUpdateUserAttributes(
  {
    UserAttributes: [
      {
        Name: 'custom:Date_Created',
        Value: new Date().toString()
      }
      ....
    ],
    UserPoolId: " the correctpool id",
    Username: "dagTest"
  },
  function(err, data) {
     if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);
}
)};

// no errors and returns nothing as it says it should.

最佳答案

我猜这是因为您没有在等待结果,并且lambda在调用adminUpdateUserAttributes()之后终止,并且dows一直等到它返回之前。

我建议您更改为基于promise的呼叫并尝试/捕获

exports.handler = async (event) => {
  try{
    // no callback here
    const data = await cognitoidentityserviceprovider
      .adminUpdateUserAttributes(attributes)
      .promise()
    console.log('success', data)
  } catch(error) {
    console.error('error', error)
  }
)}

关于node.js - AWS Cognito:adminUpdateUserAttributes不起作用,没有给出错误,我是否缺少某些东西?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56046662/

10-11 06:42