【发布时间】:2019-04-24 11:21:48
【问题描述】:
我正在努力从 ListFunctions 获得任何不为空的响应。我在一个区域中有 3 个函数,并且玩过 params 和 AWS.config.region 相当多。我一直得到 null 作为回报,在我的控制台日志中,我没有得到任何回报。任何帮助将不胜感激!
let AWS = require('aws-sdk');
//AWS.config.region = 'ca-central-1';
let lambda = new AWS.Lambda({ "apiVersion": "2015-03-31" });
module.exports.handler = async (event, context) => {
let params = {
//MasterRegion: 'ALL',
//FunctionVersion: 'ALL',
MaxItems: 10
};
lambda.listFunctions(params, function(err,data) {
if(err){
console.log(err);
}
else {
console.log(data);
}
context.done(null, "function finished");
}
}
serverless.yml 更改
provider:
name: aws
runtime: nodejs8.10
profile: [PROFILE_NAME]
region: [ca-central-1]
iamRoleStatements:
- Effect: "Allow"
Action:
- "lambda:*"
Resource:
- "*"
【问题讨论】:
-
试着让你的函数不是异步的。当它被标记为异步并且函数返回时,它会返回该值。您没有显式返回,但如果函数在没有显式返回值的情况下结束,nodejs 会返回
undefined。 -
就是这样......谢谢你好心的先生。
标签: node.js amazon-web-services lambda aws-lambda amazon-iam