相当长一段时间以来,我一直在开发 JAX-RS Web 服务来满足我的开发需求。到目前为止我编写的所有方法都接受 java 字符串或原始类型作为输入。
这种方法的一个例子:
@POST
@Path("MyMethod")
@Produces(MediaType.APPLICATION_JSON)
public String MyMethod(@FormParam("username")String username, @FormParam("password")String passowrd)
我现在想做的就是接受图像作为输入。我读了很多关于此的文章。一些人建议接受 base64 编码作为输入,另一些人建议接受实际的 InputSteam。
但是,我还没有看到关于如何接受输入流的完整示例。我读到了有关 @consumer 注释和 @Provider 的内容,但我仍然无法理解它。有没有文章、文档或示例以某种方式指导我实现这一点?即关于如何实施而不是展示理论的逐步过程。
我知道 base64 编码可以工作,但出于好奇,我想知道其他方法是如何工作的......提前致谢。
这应该有效:
import org.apache.commons.io.IOUtils;
@POST
@Path("MyMethod")
@Consumes("*/*") // to accept all input types
public String MyMethod(InputStream stream) {
byte[] image = IOUtils.toByteArray(stream);
return "done";
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)