我正在开发用于文件下载的Spring Boot Rest服务(完整文件或范围)来自控制器的请求被传递到服务层,我在那里处理文件并且必须返回它。
选项1: 我可以通过Byte读取FileInputStream Byte并将其直接写入输出流。但在该选项中,我将不得不将响应对象传递给服务层,我不想这样做(因为服务层应该与Web组件分离)。
选项2: 将整个字节数组从服务层传递到控制器也可能不是一个好选择,因为我正在处理非常大的文件。
选项3: 如果返回整个文件,我可以将FileInputStream传递给ResponseEntity,spring可以处理流式传输,但我也是 需要解决我从文件返回一系列字节的情况,具体取决于Range标头。
与此相关的任何输入或指示都将非常有用。如果需要更多信息,请与我们联系。