邮递员[POST]请求正文未正确解析

时间:2018-12-20 10:27:30

标签: amazon-web-services aws-lambda postman aws-api-gateway serverless

因此,我试图对与AWS API Gateway连接的AWS Lambda函数启用post方法。 lambda函数是根据serverless-chrome中的示例之一创建的。 (pdf功能)

我正在尝试打印事件变量,以获取使用Postman通过POST请求发送的正文。 My Post Body http://joxi.ru/Drl1qPKfvg6Bjm 但是当我在CloudWatch中查看日志时,会得到如下输出:

"body":"dXJsPWh0dHAlM0ElMkYlMkZ3d3cuYXBhcnRtZW50ZGF0YS5
pbyUyRmRhc2hib2FyZCUyRnR4LWhvJTJGY2hhbmdlLXJlcG9ydCZsYW
5kc2NhcGU9dHJ1ZSZkaXNwbGF5SGVhZGVyRm9vdGVyPXRydWUmcHJpb
nRCYWNrZ3JvdW5kPXRydWUmc2NhbGU9MSZwYXBlcldpZHRoPTgmcGFw
ZXJIZWlnaHQ9MTEmbWFyZ2luVG9wPTAuMiZtYXJnaW5Cb3R0b209MC4
yJm1hcmdpbkxlZnQ9MC4yJm1hcmdpblJpZ2h0PTAuMg=="

在这种情况下我该怎么办?是否因为发送了POST headers http://joxi.ru/RmzLaOBU0e3PKA

的ContentType变量

1 个答案:

答案 0 :(得分:1)

那是base64字符串。

您可以将其转换为@GetMapping( "shouldallow" ) @ResponseBody @PreAuthorize( "hasRole('ROLE_NOT_EXIST')" ) public String shouldAllow() { return "should allow"; } 对象。

从这里开始,您有很多选择。我建议以下内容:

  1. Buffer对象上传到S3,获取到S3的链接,然后将链接作为输出返回。

  2. Buffer对象上传到S3,获取到S3的链接,并返回指向S3中该链接的临时重定向(302)。

  3. 直接返回Buffer对象作为文件下载。