我想从AWS IAM获取用户详细信息,所以我创建了一个lambda函数,但是响应代码502错误。我的代码如下。
var AWS = require('aws-sdk');
var iam = new AWS.IAM();
AWS.config.loadFromPath('./config.json');
let getUsers = async (event, callback) => {
var params = {
UserName: "5dc6f49d50498e2907f8ee69"
};
iam.getUser(params, (err, data) => {
if (err) {
callback(err)
} else {
console.log(data)
callback(data)
}
})
};
答案 0 :(得分:1)
由于您的功能已经是state = $(this).closest('.form-group').next('.userInfo').data("state");
,因此您无需使用旧的过时的async
方法。
AWS开发工具包方法提供了一种callback
方法,您可以将其附加到每个AWS异步调用中,并且使用.promise()
,您可以简单地在async
上进行承诺。
await
希望您有一个调用此代码的处理程序,否则它将无法正常工作。
如果要将 var AWS = require('aws-sdk');
var iam = new AWS.IAM();
AWS.config.loadFromPath('./config.json');
let getUsers = async event => {
var params = {
UserName: "5dc6f49d50498e2907f8ee69"
};
const user = await iam.getUser(params).promise()
console.log(user)
};
导出为处理函数,请确保首先通过getUsers
导出它。即:module.exports
。仔细检查您的Lambda处理程序是否已在函数本身上正确配置,其中module.exports.getUsers = async event...
代表index.getUsers
是文件名(index
),而index.js
代表导出的函数。>