【发布时间】:2015-04-10 03:42:08
【问题描述】:
这是我的网络服务声明
@POST
@Path("/upload")
@Consumes(MediaType.MULTIPART_FORM_DATA)
@Produces("application/json")
public DeviceDbUploadResponse upload(@FormDataParam("file1") InputStream file1,
@FormDataParam("file2") InputStream file2,
@FormDataParam("name1") String filename1,
@FormDataParam("name2") String filename2,
@FormDataParam("ID") String ID)
我的网络服务调用
var fd=new FormData();
fd.append("ID",ID);
/* lines of code here */
$.ajax({
url: 'http://localhost:8080/linterm2m/webapi/m2m/upload',
data: fd,
processData: false,
contentType: false,
type: 'POST'
});
到目前为止一切正常。现在需要通过请求对象接收所有数据(文件名和 ID),例如:
public class Request{
String ID;
String filename1;
String filename2;
}
但由于 multipart-form-data 消费类型,我怀疑它是否可以实现。我需要一些启示和解决方案。
【问题讨论】:
-
如果是基于球衣的服务,你可以得到这样的 "@FormDataParam("file") InputStream uploadStream, @FormDataParam("file") FormDataContentDisposition fileDetail" 和 multipart-form-data
-
是的,现在看起来很整洁。但仍然需要一个 Request 对象。
-
你在哪里传递请求对象?对不起,我没有看你的答案。你完成了。伟大的!你可以给我的 cmets 投票
标签: java javascript ajax glassfish multipartform-data