Команда AWS Lambda.invoke, похоже, ничего не делает для меня. Это не выдает ошибку и не возвращает. Я прочитал тонны постов и думаю, что у ARN все в порядке. Но так как «invoke» никогда не происходит, я предполагаю, что это проблема ARN? Есть идеи?
Код:
var AWS = require('aws-sdk');
AWS.config.region = 'us-east-1';
var lambda = new AWS.Lambda();
exports.handler = async (event) => {
var params = {
FunctionName: 'myfunction',
InvocationType: 'Event',
LogType: 'Tail',
Payload: '{"sample_param": "payload_string"}'
};
lambda.invoke(params, function(err,data){
if (err) {
console.log("Error");
} else {
console.log("Returned: " + data.Payload);
}
});
};
Возвращает:
ARN / Политики:
Решение, я идиот и не использовал обещание:
exports.handler = async (event) => {
var params = {
FunctionName: 'my_fuction',
InvocationType: 'RequestResponse',
Payload: '{"my_param": "my_value"}'
};
return lambda.invoke(params).promise();
};