如何创建多部分响应

How to create Multipart Response

我正在开发 restful Web 服务,我想在其中生成以下格式的多部分响应:

HTTP/1.1 200 OK  
Server:  
MIME version:  
Content-type:Multipart/form-data  
Content-length:500; boundary=  
--Boundary--

content-type:  
content-Disposition: ;name="abc"  

[content]  
--Boundary--  
content-Disposition: ;name="cba"  

[content]  
--Boundary--  

此响应将包含查询结果,不会包含任何 url。

我用过 MimeMultipart:

MimeMultipart multipart = new MimeMultipart();
// ...add files to multipart
MimeBodyPart firstPart = new MimeBodyPart();      
imagePart.setContent(Object, MediaType.APPLICATION_OCTET_STREAM);

    MimeBodyPart secondnPart = new MimeBodyPart();
    jsonPart.setContent(Object, MediaType.APPLICATION_JSON);

    multiPart.addBodyPart(firstPart);
    multiPart.addBodyPart(secondPart);
return Response.ok(multipart, "multipart/form-data").build();

但这并不是以上述格式创建的。我正在使用 Spring 框架来实现。没有得到 header。

这就是我在 Jersey 2 中对 Multipart/form-data 响应所做的:

import org.glassfish.jersey.media.multipart.FormDataMultiPart;

FormDataMultiPart fdm=new FormDataMultiPart();
fdm.field("abc", Object o1, MediaType.APPLICATION_yourmediatype).field("cba", 
Object o2, MediaType.APPLICATION_yourmediatype);
Response response=Response.ok(fdm, MediaType.MULTIPART_FORM_DATA).build();