请教一下各位大佬,有人研究过断点续传上传文件到服务器的吗?

2019-04-07 01:07:00 +08:00
 mamahaha

请问第 2 步是否是这样做的? 1、首先计算整个文件的 md5,然后如果与已经上传的文件的 md5 如果相同,就跳过,直接用已经上传的文件。 2、然后一个大文件分成若干个分段,每个分段是否都得计算其 md5 ?待上传分段如果与已经上传的分段 md5 一致的话就跳过,也就是上次传完的分段不必再传。 不知是不是这样的?

4321 次点击
所在节点    JavaScript
8 条回复
sxcccc
2019-04-07 01:17:25 +08:00
为什么不用现成的框架呢
wunonglin
2019-04-07 01:18:44 +08:00
按理说每个分片都要校验,但具体还是看业务

借楼问一下楼下的大佬。。
第一步的时候,如果提交的 md5 值被篡改,传了一个别人一个文件的 md5 值(场景是我得不到文件,但是已经知道 md5 值)的情况下,服务器是不是还是将该 md5 匹配的文件分给我?
choury
2019-04-07 08:47:38 +08:00
@wunonglin 参考百度网盘的做法,不仅要 md5,还需要提供文件一部分内容,比如最前面或者最后面 512 个字节
lizhuoli
2019-04-07 10:45:54 +08:00
没有特殊定制需求,建议直接上成熟方案,比如 https://tus.io/
自己实现,除了服务端以外,至少三个客户端需要配合( iOS/Android/Web ),费时费力还容易踩坑
mamahaha
2019-04-07 15:38:25 +08:00
@lizhuoli
感谢,强大到令人发指,这个不是上传以后再合并,是一边上传一边合并,试了一下视频可以一边上传一边播放,太强了。
jefferycai
2019-04-07 17:21:17 +08:00
七牛云的断点,了解下
my3157
2019-04-08 01:45:54 +08:00
@jefferycai #6 对象存储的 Multipart 一般是先分成小文件上传, 然后服务端合并, S3 七牛 阿里 OSS 都是这么实现的
smallgoogle
2019-04-08 02:58:06 +08:00
你大概差一个 WebUploader

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/552604

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX