AWS API网关始终将base64编码的主体生成为Lambda



我正在使用Serverless、Lambda/API网关制作API端点。但是请求主体始终由base64编码。原因是什么?

我没有设置相应的主体模板。我想在不设置相应主体模板的情况下获得JSON数据。

我相信这是因为Lambda代理集成。

刚刚解决了这个问题。

let buff = Buffer.from(event.body, "base64");
let eventBodyStr = buff.toString('UTF-8');
let eventBody = JSON.parse(eventBodyStr);

ApiGateway默认设置为base64encode属性为true,您可以避免对发送正确内容类型的主体进行编码。例如,内容类型:application/json

来源

最新更新