大佬教程收集整理的这篇文章主要介绍了node.js – AWS Lambda函数在context.fail之后继续一点,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
这一切都运行正常,但我在日志中注意到,在记录错误后,该函数会在退出之前继续运行一段时间.例如,我的async.waterfall调用中的第一个函数被调用(即来自该函数的消息显示在日志中).我甚至尝试在context.fail之后立即添加一个context.done(errormessagE),然后执行它(即我传入的消息被记录)以及几行代码.
这是预期的行为吗?我在文档中找不到任何提及.该函数是否需要一点时间才能退出,或者我是否误解了async.waterfall之前的处理函数中代码的同步性?
下面是我的一些代码. context.fail之后显示的所有console.log消息都会打印到日志中,这是我不希望发生的.
exports.handler = function(event,context) { console.log('Received event:',JSON.Stringify(event,null,2)); if (event.Records[0].s3.object.size > MAX_FILE_SIZE) { var error = new Error("Validation error: the file is too big.") context.fail(error); } console.log('Event validation complete.') var bucket = event.Records[0].s3.bucket.name; var key = decodeURIComponent(event.Records[0].s3.object.key.replace(/\+/g,' ')); var filename = key.split("/")[1]; var params = { Bucket: bucket,Key: key }; console.log('StarTing processing of the following file: ' + JSON.Stringify(params,2)); async.waterfall([ function download(callBACk) { // Download the image from S3 into a buffer. console.log("Downloading the image from S3..."); s3.getObject(params,function(err,data) { if (err) { callBACk(err); } else { callBACk(null,data); } }); },... ],...) }
以上是大佬教程为你收集整理的node.js – AWS Lambda函数在context.fail之后继续一点全部内容,希望文章能够帮你解决node.js – AWS Lambda函数在context.fail之后继续一点所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。