在Java中解析Lambda的multipart / form-data json主体

时间:2018-11-23 08:35:32

标签: amazon-web-services java-8 aws-lambda aws-api-gateway

我正在尝试实现Lambda函数,该函数接收POST请求,该请求包含编码为multipart / form-data的数据。使用Lambda代理集成通过API网关接收消息,并且到达Lambda函数时,主体在Base64中进行编码。手动解码后,我看到它包含一个多部分主体,如下所示:

cwd = os.getcwd()
path=os.path.join(cwd,'Result')#New Folder:Result

我需要在Java 8中解析此消息。 这样我就可以访问

之类的各个部分
import pandas as pd
import os
cwd = os.getcwd()
path=os.path.join(cwd,"Downloads")#New Folder:Result
allfiles = os.listdir(path)
files = [files for files in allfiles if files.endswith('.pdf')]

for i in files:
    print i

我尝试过文件上传,而Apache Multipart则没有锻炼

任何溶胶都将有所帮助。

1 个答案:

答案 0 :(得分:0)

我的应用程序遇到了类似的问题。我在这里使用和修改了自定义表单数据解析器:https://apimeister.com/2015/10/10/formdatahandler-implements-com-sun-net-httpserver-httphandler.html

我正确解析了它,但是二进制数据格式错误,类似于此处的问题:https://github.com/dherault/serverless-offline/issues/230

您如何使整个AWS Lambda主体编码为base64?您可以发布说明吗?这可能会解决我遇到的格式错误的数据问题。