0

我正在尝试在 Tomcat 中开发一个 Java servlet 来处理发布请求,最终打算处理文件并将所述处理后的文件返回给客户端。根据我到目前为止的搜索,我要处理的请求似乎被赋予了一种不寻常的格式。我可以提出替代方案,但我无法控制请求的设计,如下所示:

POST /api/0/actions/image HTTP/1.1
Host: <host>.com
Content-Length: <content-length>
Content-Type: multipart/form-data; boundary=<boundary>
Accept-Encoding: gzip, deflate, compress
Accept: */*
User-Agent: <user-agent>

--<boundary>
Content-Disposition: form-data; name="application"

{<authentication_info_as_JSON_object>}
--<boundary>
Content-Disposition: form-data; name="inputName"

<inputname>
--<boundary>
Content-Disposition: form-data; name="options"

{<options_as_JSON}
--<boundary>
Content-Disposition: form-data; name="input"; filename="<inputname>"
Content-Type: <content-type>

<file-binary>
--<boundary>--

我可以使用正则表达式和标准字符串处理方法将此请求的内容解析为文本,重构我需要手动处理的 JSON 对象和文件。但这让我觉得这是一种容易出错且难以维护的方法。是否有开源工具可以帮助我以更结构化或标准的方式处理此请求?

提前致谢。

4

1 回答 1

2

这有什么不寻常的?

使用Apache Commons 的 FileUpload或等效的。

如果您使用的是 Servlet 3.0 容器,则它包含在例如HttpServletRequest.getParts()中

于 2013-10-08T21:22:31.553 回答