大佬教程收集整理的这篇文章主要介绍了node.js – Nodejs – 从另一个lambda函数中调用AWS.Lambda函数,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
但是,当我尝试在Lambda函数中使用它时,我收到以下错误:
AWS lambda undefined 0.27s 3 retries] invoke({ FunctionName: 'my-function-name',InvocationType: 'requestResponse',LogType: 'Tail',Payload: <Buffer > })
我的功能:
'use Strict'; var AWS = require("aws-sdk"); var lambda = new AWs.Lambda({ apiVersion: '2015-03-31',endpoint: 'https://lambda.' + process.env.DYNAMODB_REGION + '.amazonaws.com',logger: console }); var lambdaHandler = {}; // @var payload - type:string // @var functionName - type:string lambdaHandler.invokeFunction = function (payload,functionName,callBACk) { var params = { FunctionName: functionName,/* required */ InvocationType: "requestResponse",LogType: "Tail",Payload: new Buffer(payload,'utf8') }; var lambdarequestObj = lambda.invoke(params); lambdarequestObj.on('success',function(responsE) { console.log(response.data); }); lambdarequestObj.on('error',function(responsE) { console.log(response.error.messagE); }); lambdarequestObj.on('complete',function(responsE) { console.log('Complete'); }); lambdarequestObj.send(); callBACk(); }; module.exports = lambdaHandler;
Lambda_A调用Lambda_B
使用包含单个参数名称的Payload:’Alex’.
Lambda_B用Payload响应:“Hello Alex”.
首先创建需要名称属性的Lambda_B
关于事件参数
并使用“Hello”event.name响应请求:
Lambda_B
exports.handler = function(event,context) { console.log('Lambda B Received event:',JSON.Stringify(event,null,2)); context.succeed('Hello ' + event.Name); };
确保为Lambda_B和Lambda_A提供相同的角色.
例如:创建一个名为lambdaexecute的角色,它同时具有AWSLambdaExecute和
AWSLambdaBasicExecutionRole(由于某种原因,两者都是必需的):
Lambda_A
var AWS = require('aws-sdk'); AWs.config.region = 'eu-West-1'; var lambda = new AWs.Lambda(); exports.handler = function(event,context) { var params = { FunctionName: 'Lambda_B',// the lambda function we are going to invoke InvocationType: 'requestResponse',Payload: '{ "name" : "Alex" }' }; lambda.invoke(params,function(err,data) { if (err) { context.fail(err); } else { context.succeed('Lambda_B said '+ data.Payload); } }) };
保存这两个Lambda函数后,测试运行Lambda_A:
一旦你有基本的intra-lambdda调用工作,你可以很容易地扩展它以调用更精细的Lambda函数.
以上是大佬教程为你收集整理的node.js – Nodejs – 从另一个lambda函数中调用AWS.Lambda函数全部内容,希望文章能够帮你解决node.js – Nodejs – 从另一个lambda函数中调用AWS.Lambda函数所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。