节点异步仅在 node-lambda 内部调用第一个函数
node async only calls first function when inside node-lambda
使用像以下节点异步这样的普通节点脚本就可以了:
async = require('async');
async.waterfall([
function (c) {
console.log(1);
c(null);
},
function (c) {
console.log(2);
c(null);
}
]);
以上通过node test.js
运行时打印出来:
1
2
。不出所料。
但是,如果我将代码放在节点 lambda 处理程序中:
var async = require('async');
exports.handler = function( event, context ) {
console.log( "==================================");
async.waterfall([
function (c) {
console.log(1);
c(null);
},
function (c) {
console.log(2);
c(null);
}
]);
console.log( "==================================");
context.done( );
}
运行时仅调用第一种方法./node_modules/.bin/node-lambda run
==================================
1
==================================
我正在使用:
- 异步 1.5.2,
- 节点 5.5.0
- 节点λ 0.1.5
您正在使用异步代码。显然,context.done( );
完成主函数handler
和其他异步代码(瀑布中的第二个函数)的执行的代码无法执行,它没有足够的时间,因为主函数已经完成。
相关文章:
- 而循环只设置php中输入字段中的第一个值
- 如何在JQuery函数中定义一个值,然后调用另一个函数并使用该值
- 多次调用另一个javascript函数中的javascript函数
- 在输入字段上有两个函数调用,一个在Blur上,一个不在Angular中
- 错误:$injector:modulerr模块错误(我的第一个SPA应用程序)
- IE11中的第二个调用取消了第一个Fetch API调用
- 如何在调用下一个请求之前完成第一个Ajax Get请求
- 如何通过连接多个异步javascript调用,从对象数组中排序并获取第一个obejct
- 在ajax html返回中调用ajax会阻止第一个ajax脚本进一步工作
- 如何在第一个 php 脚本中访问变量 'a' 的值到第二个 php 脚本,并通过 ajax 调用链接
- 如何在angularjs中使用第一个api的结果,进入第二个api调用
- 第一个javascript函数调用从未执行
- 为什么当调用一个函数时,第一个this是父对象,但在随后的函数调用中,this是指窗口对象
- 如何调用$http在angularJS顺序?但是我需要根据第一个$http的响应调用它第二个$http
- 第一个next()调用的参数所在的位置
- 不是所有的链接都触发AJAX调用,只有第一个在Python Flask Application中触发AJAX调用
- 如果第一个ajax请求在第一个调用获得响应之前再次被调用,如何停止第一个ajax请求
- 第一个ajax调用没有'不起作用
- 如何在第一个 getjson 函数中的另一个 getjson 调用中使用 getjson 响应变量
- 在第一个ajax调用终止之前停止第二个ajax调用