gpt4 book ai didi

node.js - 从另一个 lambda 调用 lambda 时出现问题

转载 作者:太空宇宙 更新时间:2023-11-04 00:07:19 24 4
gpt4 key购买 nike

我有 2 个 Lambda 函数,我想直接调用它们,而不是通过 API 网关。 Lambda 函数 A 正在调用 Lambda B 以及 queryStringParameters。由于某些原因,我收到此错误

{ UnexpectedParameter: Unexpected key 'queryStringParameters' found in params

这是我的 Lambda A 函数

    var aws = require('aws-sdk');
var lambda = new aws.Lambda({
region: 'eu-central-1'
});
exports.handler = (event, context, callback) => {
var params = {
FunctionName: "function-getStats",
InvocationType: "RequestResponse",
LogType: "Tail",
"queryStringParameters" : { "fn" : "latest_no" }
};
lambda.invoke(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
};

如下调用 Lambda B

var AWS = require('aws-sdk');
AWS.config.update({region: 'eu-central-1'});
var ddb = new AWS.DynamoDB.DocumentClient({apiVersion: '2012-08-10'});

exports.handler = (event, context, callback) => {
var fn = event["queryStringParameters"]['fn'];
...
..


//If successful return the following response
console.log("Success", items);
callback(null, {
'statusCode': '200',
'body': JSON.stringify(items),
'headers': {
"Access-Control-Allow-Origin": "*"

},
'isBase64Encoded': false
});

有人可以建议如何解决这个问题吗?

最佳答案

如果有人遇到同样的问题。这是我采取的方法

var aws = require('aws-sdk');
var lambda = new aws.Lambda({
region: 'eu-central-1'
});
exports.handler = (event, context, callback) => {
event.queryStringParameters= {"fn" : "latest_no" };
var params = {
FunctionName: "function-getStats",
InvocationType: "RequestResponse",
LogType: "Tail",
Payload: JSON.stringify(event, null, 2),

};
lambda.invoke(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
};

关于node.js - 从另一个 lambda 调用 lambda 时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51671446/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com