Java 如何从多部分表单数据请求中删除http工件?

Java 如何从多部分表单数据请求中删除http工件?,java,file-upload,jersey,multipartform-data,Java,File Upload,Jersey,Multipartform Data,我在jersery servlet中有这个方法签名。正在访问servlet,并且表单数据存在于uploadedInputStream对象中,但是流没有从中删除http工件。见下文 @POST @Produces("text/plain") @Consumes(MediaType.MULTIPART_FORM_DATA) public String uploadFileIE( @FormDataParam("qqfile") InputStream uploadedInputStream

我在jersery servlet中有这个方法签名。正在访问servlet,并且表单数据存在于uploadedInputStream对象中,但是流没有从中删除http工件。见下文

@POST
@Produces("text/plain")
@Consumes(MediaType.MULTIPART_FORM_DATA)
public String uploadFileIE(
    @FormDataParam("qqfile") InputStream uploadedInputStream ){

}
保存到文件时,输入流在字节数据周围有以下工件:

-----------------------------7dc1f42e3005a8
Content-Disposition: form-data; name="qqfile";filename="[filename]"
Content-Type: application/octet-stream

[bytes from data stream]
-----------------------------7dc1f42e3005a8--

这些工件现在不应该被移除吗?有没有简单的方法可以在不重新发明轮子的情况下删除它们?

对于Jersey,您需要使用FormDataContentDisposition对象“使用”额外的标题信息。凌乱但必要:

@POST
@Produces("text/plain")
@Consumes(MediaType.MULTIPART_FORM_DATA)
public String uploadFileIE(
    @FormDataParam("qqfile") InputStream uploadedInputStream,
    @FormDataParam("qqfile") FormDataContentDisposition fileDetail){

}

非常感谢你。这一整天都在踢我的屁股。我想这并不是那么简单。这对我不起作用:(