繁体   English   中英

实现 HTTP 的最佳方法的建议上传简历

[英]Suggestions for best way of implementing HTTP upload resume

我正在开发一个允许通过 HTTP PUT 上传大文件 (GB+) 的项目,我需要实现一种恢复上传的方法。 一旦文件被上传并最终确定,它就是完整的并且不能被修改。 到目前为止,我有两个选择,但没有一个完全适合:

选项1

客户端在文件上发送初始 HEAD 请求,如果文件不存在,则返回 404 或文件详细信息,包括当前大小以及沿X-Can-Resume行的 HTTP X-Header 或类似的东西来指定是否文件可以恢复,并且Range header 指定它具有哪些字节。 这看起来不错,但我不喜欢 X-Header,因为它从 HTTP 标准中删除。

选项 2

客户端发送一个Content-Length header 为 0 字节且没有正文的 PUT 请求,然后服务器可以发回308 Resume Incomplete (如此处建议的http://code.google.com/p/gears/wiki/ResumableHttpRequestsProposal )或202 Accepted header 表示是恢复还是从头开始。 除了使用非标准 header 之外,这似乎也可以接受。

关于实现这一点的最佳方式的任何其他建议?

谢谢,J

在这两种解决方案中,都没有现有的客户端和服务器实现,所以我猜你会同时编写代码。 我认为您应该在最简单的内容和 Gears 提案中描述的内容之间找到适当的平衡(顺便说一下,您可能知道 Gears 已经死了),并准备好在标准出现时进行更改。

如果我要实现这个功能,我会让客户端可以分块上传,我会在整个内容和块上添加一个消息摘要。

暂无
暂无

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

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