我想从Chrome Advanced REST Client
发送表单参数,但是,它来自null
。这是我的资源类
IKeywordResource.java
@Path("")
public interface IKeywordResource {
@POST
@Path("/upload")
@Consumes("multipart/form-data")
public List<Keyword> uploadKeywords(MultipartFormDataInput uploadFile,
@FormParam("list_format") String listFormat) throws IOException;
}
KeywordResource
public class KeywordResource implements IKeywordResource {
@Inject
public KeywordService keywordService;
@Override
public List<Keyword> uploadKeywords(MultipartFormDataInput uploadFile,
@FormParam("list_format") String listFormat) throws IOException {
return keywordService.upload(uploadFile, listFormat);
}
}
这就是我发送POST请求和定义表单参数的方式。
但是,正如我所说的list_format为null,我不知道为什么。我会感激任何帮助
答案 0 :(得分:3)
您正尝试将请求有效内容映射两次。您可以将所有参数映射到MultipartFormDataInput
对象,并使用uploadFile.getFormDataMap().get("list_format");
检索参数,也可以使用@FormParam
映射每个参数。