【问题标题】:AWS Lambda: Cannot proceed callback in an 'Error'AWS Lambda:无法在“错误”中继续回调
【发布时间】:2020-01-29 13:31:20
【问题描述】:

我正在尝试调用 lambda 函数。该函数在数据可用时可以使用resolve(),但是当出现错误时,它不会继续回调,只是给我一个错误。

lambda.invoke({
        FunctionName: 'cognitoFunction',
        Payload: JSON.stringify({
            email: slots.Email
        })
    }, function(err, data) {
        if(err) { // Does not work

            callback(close3(sessionAttributes, { "contentType": "PlainText", "content": "ERROR" }));

        }
        else { // This part works
            callback()
        }
    });

"errorType": "DependencyFailedException",

"errorMessage": "无效 Lambda 响应:收到来自 Lambda 的错误响应:未处理”

【问题讨论】:

    标签: aws-lambda amazon-cognito amazon-lex


    【解决方案1】:

    我发现了这个问题。错误进入 'data',而不是 'error'

    lambda.invoke({
            FunctionName: 'functionName',
            Payload: JSON.stringify({
                email: slots.Email
            })
        }, function(error, data) {
            if(error){
                callback(...)
            }
            else {
                data = JSON.parse(data.Payload);
                if(data.errorMessage) { // The error output is in here
                    callback(close(sessionAttributes, { "contentType": "PlainText", "content": data.errorMessage }));
                }
            }
        });
    

    【讨论】:

      猜你喜欢
      • 2020-04-14
      • 1970-01-01
      • 2015-08-28
      • 1970-01-01
      • 2011-04-06
      • 1970-01-01
      • 2017-11-13
      • 2020-08-28
      • 2016-02-02
      相关资源
      最近更新 更多