【发布时间】:2017-04-27 22:51:02
【问题描述】:
我正在学习节点和无服务器架构。 为了在本地测试我的 lambda 函数,我目前正在使用 lambda-local,到目前为止它运行良好。
现在我有一个函数 invoke 另一个 lambda 函数,如下所示:
let lambda = new integration.myLambda.AWS.Lambda();
let params = {
FunctionName: 'my-other-function',
InvocationType: 'RequestResponse',
LogType: 'None',
Payload: JSON.stringify(myEvent)
};
return new Promise((resolve, reject) => {
lambda.invoke(params, function (error, data) {
if (error) {
console.log('error on invoke', error);
reject({
statusCode: HttpStatus.INTERNAL_SERVER_ERROR,
message: error
});
} else {
console.log('invoke success', data);
resolve(JSON.parse(data.Payload));
}
});
});
这段代码在本地无法运行,但一旦部署到 aws 上就可以正常运行。但是部署到 aws 大约需要 2 分钟。所以我想知道是否有办法让这段代码在本地运行。
有什么建议吗?
谢谢!
【问题讨论】:
-
根据我 2 年的 AWS Lambda 经验 - 我假设您希望在本地运行它们以便对它们进行单元测试。有几种方法可以在本地对 AWS Lambda 进行单元测试。在这篇文章中,他们描述了我一直在使用的一个,我可以推荐:blog.atomdata.io/…
-
我目前处于类似情况......你有没有找到一种方法来做到这一点?谢谢!
标签: node.js amazon-web-services aws-lambda serverless-architecture