我使用的是jaxrs-ri-2.01 我想在参数中获取在我的HTTP PUT请求正文中发送的二进制数据。
我找到了一个可以解决问题的注释:
@FormDataParam
但它似乎不适用于jaxrs-ri-2.01
我想知道:
提前感谢您的回答!
答案 0 :(得分:0)
- 如果有这种方式我可以使用这个jaxrs-ri版本
醇>
您需要jersey-media-multipart
。这有多部分支持。如果您使用的是Maven,请添加
<dependency>
<groupId>org.glassfish.jersey.media</groupId>
<artifactId>jersey-media-multipart</artifactId>
<version>2.0.1</version> <!-- or whatever version
</dependency> you plan to use. -->
如果您不使用Maven,可以找到下载here。向下滚动并选择您正在使用的Jersey版本。然后单击 Download(Jar)按钮进行下载。您还需要随附的mimepull
jar。要找到它,请向下滚动并点击与mimepull
一起使用的版本按钮。
- 如果必须将jaxrs-ri版本更改为更新版本
醇>
如上所述,任何2.x版本都会在不同的工件中具有多部分支持。
- 如何使用此注释
醇>
首先,您需要注册MultiPartFeature
。请参阅here以获取帮助。然后做一些像
@POST
@Consumes(MediaType.MULTIPART_FORM_DATA)
public Response post(@FormDataParam("file") InputStream file) {
...
}
另请参阅(有关详细信息和示例):