AWS cognito: adminUpdateUserAttributes не работает и не выдает ошибку, я что-то упустил? - PullRequest
0 голосов
/ 08 мая 2019

Я не могу получить атрибуты adminUpdateUserAttributes для Cognito.Кли работает, и я могу сделать так, чтобы пользователь добавил / изменил их, но не хотел, чтобы он работал.

Я использую AmazonCognitoPowerUser управляемую политику AWS для лямбда-функции, и лямбда срабатывает, есть что-то, чего мне не хватает, это звучит и выглядит просто, но просто не работает.

также есть способ получить дату создания по умолчанию, не делая мою собственную.

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.

1 Ответ

0 голосов
/ 08 мая 2019

Полагаю, это потому, что вы не ожидаете результата, и лямбда завершается после вызова adminUpdateUserAttributes(), и dows не ждут, пока он вернется.

Я бы посоветовал вам перейти к обещанию на основе вызовов и сделать попытку / поймать

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)
  }
)}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...