首页 > 解决方案 > AWS Node.js Lambda 调用 Lambda 失败

问题描述

AWS Lambda.invoke 命令似乎对我没有任何作用。它既不抛出错误也不返回。我已经阅读了大量的帖子,我认为所有的 ARN 都是正确的。但由于“调用”从未发生,我认为这是一个 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();
};

标签: node.jsamazon-web-servicesaws-lambda

解决方案


推荐阅读