AWS Lambda JavaScript SDK异步处理程序
考虑节点8.10代码:AWS Lambda JavaScript SDK异步处理程序,javascript,node.js,aws-lambda,Javascript,Node.js,Aws Lambda,考虑节点8.10代码: exports.handler = async (event, context, callback) => { setTimeout(() => callback(null, "resolved"), 100) }; 当我运行它时,响应为null。当我从处理程序中删除async关键字时,响应将如预期的那样“已解析” 有人能解释这种行为吗?在Lambda容器中如何执行async函数,“正常”函数有什么区别?异步函数的处理与正常函数不同 使用普通函数,L
exports.handler = async (event, context, callback) => {
setTimeout(() => callback(null, "resolved"), 100)
};
当我运行它时,响应为null
。当我从处理程序中删除async
关键字时,响应将如预期的那样“已解析”
有人能解释这种行为吗?在Lambda容器中如何执行
async
函数,“正常”函数有什么区别?异步函数的处理与正常函数不同
使用普通函数,Lambda容器使用回调函数获取结果,甚至异步调用
但是当处理程序被定义为async
时,返回值为:var res=await handler(…)
,回调被忽略。您确定它返回null
而不是未定义的
?在测试结果中我看到响应:null
。但即使它是未定义的
,问题是执行中有什么区别?