0

我試圖創建一個lambda函數來創建一個用戶,每當有一個表中的更新在發電機數據庫。從lambda函數調用AWSCognito註冊

我用觸發器創建了一個dynamodb表。當我在lambda中運行下面的代碼時,出現「adminCreateUser not a function」錯誤。

lambda function: 
exports.handler = function(event, context) { 
    // TODO implement 
    cognitoidentityserviceprovider.adminCreateUser(params, function(err, data) { 
     if (err) console.log(err, err.stack); // an error occurred 
     else  console.log(data);   // successful response 

    }); 
    context.done(null, 'Hello from Lambda'); 

}; 

回答

0

它應該只是下面的代碼。也許請確保adminCreateUser位於您的主要AWS開發工具包中,但最近才引入它。

const AWS = require('aws-sdk'); 

    exports.handler = (event, context, callback) => { 
     AWS.config.apiVersions = { 
      cognitoidentityserviceprovider: '2016-04-18' 
     }; 
     AWS.config.update({accessKeyId: 'akid', secretAccessKey: 'secret'}); 
     var cognito = new AWS.CognitoIdentityServiceProvider({ 
      region: 'us-east-1' 
     }); 
     params = {}; 
     cognito.adminCreateUser(params, function(err, data) { 
      if (err) console.log(err, err.stack); // an error occurred 
      else  
       console.log(data); // successful response 

     }); 
context.done(null, 'Hello from Lambda'); 

    }; 
+0

感謝Ionut。內聯編輯器中的aws-sdk包看起來沒有這個功能。我下載了最新的aws-sdk,創建並上傳了一個部署包。它現在有效。 – Nikhil