如何使用Java访问AWS Lambda回调结果

时间:2018-05-26 08:47:56

标签: java node.js aws-lambda

我正在调用用NodeJS编写的AWS Lambda函数,该函数导出:

exports.handler = (event, context, callback) => {

回调传递给SQL查询的输出:

new mssql.Request(conn).query(passedStatement,(err, result) => {
    if (err) {
        callback(err);
    } else {
        console.log("done");
        callback(null, result);
    }
});

我从Java代码调用此函数:

InvokeRequest request = new InvokeRequest()
        .withFunctionName(lambdaFunctionName)
        .withPayload(jsonPayload)
        .withInvocationType(InvocationType.RequestResponse)
        .withLogType(LogType.Tail);

InvokeResult result = client.invoke(request);

日志结果包含消息'done',所以我相信代码执行没有错误。但是,我无法看到如何从SQL查询中获取输出。假设我通过SELECT * FROM user WHERE Username = 'My User',如何在Java代码中获取用户详细信息?

1 个答案:

答案 0 :(得分:0)

为了将结果回调作为JSON,只需要:

new String(result.getPayload().array())