小编wag*_*dow的帖子

有没有办法从 node.js 同步调用 AWS Lambda?

我正在尝试通过 AWS Lambda 从现有应用程序运行特定函数,使用 JS SDK 从我的 node.js 应用程序调用 Lambda。由于我要覆盖现有函数,因此我必须保留其基本结构,即:

overwrittenFunction = function(params) {
    //get some data
    return dataArray;
}
Run Code Online (Sandbox Code Playgroud)

..所以我需要得到一个我可以返回的数组,如果我想保留我使用的库的底层结构。现在,据我所知,LAMBDA调用是异步的,因此它能够做这样的事情:

overwrittenFunction = function(params) {
    lambda.invoke(params, callback);
    function callback(err,data) {
        var dataArray = data;
    }
    return dataArray;
}
Run Code Online (Sandbox Code Playgroud)

(我也尝试过类似的承诺和异步/等待)。

afaik 我现在有两个选择:以某种方式弄清楚如何进行同步 Lambda 调用,或者修改我的库/现有应用程序(如果可能,我宁愿不这样做)。

有没有办法做这样的事情并以某种方式返回我期望的值?

(我正在使用节点 v8.9.4)

asynchronous amazon-web-services node.js aws-lambda aws-sdk-js

6
推荐指数
2
解决办法
7964
查看次数