java - REST 二进制数据

标签 java rest binary jaxb resttemplate

我正在构建接受 Foo 的 REST 服务包含字符串 二进制数据混合的对象。这是我目前得到的 XML。

<foo>
     <text>regular text</text>
     <text mime="application/octet-stream">base64 encododed binary data</text>
</foo>

内联大量 (MB) 二进制数据是个好主意还是有缺点?

作为一个次要的设计细节,我试图在使用 <text mime=".."/> 之间做出选择。或专用名称 <binary>...</binary>对于二进制数据。哪个更连贯?

最佳答案

我建议在您的请求/响应 xml 中只包含您将存储要传递的二进制数据的位置,然后检索该数据执行另一个请求。 该解决方案的缺点是执行另一个请求,但优点是站在你这边:

  • 无需序列化/反序列化 64 个字符串
  • 更容易测试您的休息条件
  • 减少臃肿的 xml

关于java - REST 二进制数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8816797/

相关文章:

java - IDE 的项目配置使用相同的代码格式

java - EMF 编辑域命令创建

java - 在 Rest Web 服务中发送 url 作为查询参数

c - 在windows机器上读取linux机器生成的二进制文件

python - LeetCode 762 为什么单独的代码在 Jupyter Notebook 中有效,而在 Leetcode 中无效

java - NetBeans 中 Java API 和语言的上下文帮助

java - Kafka 无法解析 javax/xml/bind/* ClassNotFoundExeption for java 12?

c# - 使用 restsharp 反序列化 json 字符串

rest - 其余资源的 Grails spring-security 静态规则似乎无法正常工作

iphone - 在iPhone上从0到3保存数字长链(NSArray),这是一种有效的方法