AWS Api-Gateway在api网关测试中postman成功时错误500

问题描述 投票:0回答:1

我面临着一个奇怪的问题,在api网关中的lambda集成(尝试代理也是同样的问题)。

lambda首先点击AppSync并在错误时返回JSON内容或成功时返回XLXS文件。

当我在API网关测试控制台测试时,它带回了状态200和二进制结果,正如我所期望的那样。

更多信息。

Intergration type : 兰姆达

成功回复: 。

response = buffer.toString("base64");

错误响应。

response= JSON.stringify(err);

Serverless apigateway setup:

exportXls: 
handler: ./src/apiGatewayLambdas/exportxls/exportXls.handler
role:  AppSyncLambdaRole 
events:
    - http:
        path: /api/exportxls
        method: post
        integration: lambda

        contentHandling: CONVERT_TO_BINARY
amazon-web-services aws-lambda aws-api-gateway serverless-framework aws-serverless
1个回答
0
投票

显然,Apigateway与lambda或代理集成编码身体为base64。

let buffer = new Buffer(_event.body, "base64");
let body = buffer.toString("ascii");
body = JSON.parse(body);

一切都按预期进行。

© www.soinside.com 2019 - 2024. All rights reserved.