繁体   English   中英

如何在 spring 启动中的 header 中设置文件大小以显示下载进度?

[英]How to set file size in the header in spring boot to display the download progress?

如何在 spring 启动中的header中设置file size以在客户端显示下载进度?

@GetMapping(value = "/document/{nodeRef}/{versionNumber}")
public byte[] getDocumentWithVersion(@PathVariable(value = "nodeRef") UUID nodeRef, @PathVariable(value = "versionNumber") Double versionNumber) {
    return docService.getDocument(nodeRef, versionNumber);
}

客户端在filebody开始下载之前收到header 因此在header中添加了Content-lengthcontent-type

@GetMapping(value = "/document/{nodeRef}/{versionNumber}")
public ResponseEntity<byte[]> getDocumentWithVersion(@PathVariable(value = "nodeRef") UUID nodeRef, @PathVariable(value = "versionNumber") Double versionNumber) {
    byte[] file = alfrescoService.getDocument(null, nodeRef, versionNumber);
    HttpHeaders headers = new HttpHeaders();
    headers.add(HttpHeaders.CONTENT_LENGTH, String.valueOf(file.length));
    headers.add(HttpHeaders.CONTENT_TYPE, "application/octet-stream");
    return ResponseEntity.ok().headers(headers).body(file);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM