java - REST 文件上传 - 分段或仅在输入流上发送内容

标签 java rest jersey multipartform-data

我需要编写应接收文件并将其保存到磁盘的 REST 资源。
文件将从 Jersey 客户端发送。
目前,我看到两个选择:
1.使用多部分
2. 只需将输入流作为字符串读取并将其保存到文件中。

使用多部分有什么优点?与文件大小有关吗?或者其他什么?

谢谢

最佳答案

如果你使用 Jersey 服务器端,使用 multipart 你会获得

  • 磁盘缓冲(您肯定不想在内存中保留大文件)
  • 自动 Base64/二进制流转换

如果您选择字符串选项,这些好处将不可用。

另请参阅我对问题 JAX-RS Accept Images as input 的回答,有一个多部分选项的示例实现

关于java - REST 文件上传 - 分段或仅在输入流上发送内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14932701/

相关文章:

java - httpPost setEntity 始终为空

Java:外部类和内部类方法之间的名称歧义

json - 我的 API 是否应该将 JSON 数据嵌套在父对象中?

java - Spring RestTemplate : How to repeatedly check Restful API Service?

java - Jersey 服务器端异步 API 未按预期工作

java - 在 Tomcat 中使用 Jersey 作为 Servlet 的 Spring Boot

java - 到下一个 5 秒的毫秒数

java - ARCore 中的 Pose 是什么意思?

java - AWS S3 文件上传与 dropwizard 集成?

java - 使用 Jersey Rest 测试框架和 Mockito 进行单元测试