【发布时间】:2015-08-03 22:33:03
【问题描述】:
Apache Commons File Upload 包是否提供通用接口来通过InputStream、附加Array<Byte> 或通过任何其他通用流接口流解析multipart/form-data 块?
我知道他们有一个流式 API,但该示例仅向您展示如何通过 ServletFileUpload 执行此操作,我认为它必须特定于 Servlet。
如果没有,JVM 中是否还有其他替代框架可以让您做到这一点?可悲的是,我使用的框架 Spray.io 似乎没有提供这样做的方法。
【问题讨论】:
-
你有什么样的InputStream?或者你怎么得到它? Apache Commons File Upload 有一个FileUploadBase.getItemIterator(RequestContext),您可以使用
-
你看过 spray.io 库中的这个例子吗? github.com/spray/spray/blob/master/examples/spray-can/…
-
我将以 Array
块的形式接收输入,因此最理想的情况是我希望将这些字节提供给流解析器。但是,您提到的函数需要一个 RequestContext,其子类只有 ServletRequestContext 和 PortletRequestContext。对我来说不够笼统。 -
是的,我做了,发现它并没有提取实际数据,即,结果输出仍将包含在边界和标题中。
-
@ThusithaThilinaDayaratne 我改用这个:github.com/DanielN/multipart-handler
标签: java scala jvm multipartform-data apache-commons-fileupload