我正在开发一个应用程序来从我的服务器上做一些mp3流式传输。我希望用户不要下载整个mp3文件,因此字节部分写在响应的OutputStream中。
我知道这也与HTTP标头和范围有关,所以我发现this class应该有效。
但是,我使用的是Spring MVC Controller,它似乎没有按预期工作:文件已完全下载,并且在一个用户请求中有两个请求控制器,但有以下例外:
java.net.SocketException: Connection reset by peer: socket write error
我知道CommonsMultipartResolver的存在,但我发现的所有内容都是上传文件,而不是下载。我的问题是,春天有什么能轻易做到这一点吗?
PD:我使用上述类
附上我所在的代码 @RequestMapping(value = "merge/{name:.+\\.mp3}")
public void playMerged( @PathVariable("name") String audioName, HttpServletRequest request,
HttpServletResponse response) {
String mergedAudioPath = service.getMergedAudio(audioName);
MultipartFileSender.fromPath(Paths.get(mergedAudioPath)).with(request).with(response).serveResource();
}
谢谢!