Maison  >  Article  >  développement back-end  >  网站图片上传可以实现秒传功能吗?

网站图片上传可以实现秒传功能吗?

WBOY
WBOYoriginal
2016-06-06 20:29:061206parcourir

比如360云盘等网盘,有时在上传文件时会有“秒传”效果,搜索了一下,这个原理是 每个文件都有自己独立的哈希值和MD5值,这样就可以在上传时判断该文件在服务器是否已经存在了,所以才能实现秒传的功能。

那么我们php网站也可以实现这样的功能吗,我知道在客服端不能识别图片的MD5但是,只要传到空间后能识别这样就增加了空间的利用率啊,以不至于很多相同的图片被重复上传而保存在服务器上面。

可不可以实现呢?

除了图片,其它文件也有唯一的标示吧,也可以实现这样的吧。

有没有这样做的必要呢?

回复内容:

比如360云盘等网盘,有时在上传文件时会有“秒传”效果,搜索了一下,这个原理是 每个文件都有自己独立的哈希值和MD5值,这样就可以在上传时判断该文件在服务器是否已经存在了,所以才能实现秒传的功能。

那么我们php网站也可以实现这样的功能吗,我知道在客服端不能识别图片的MD5但是,只要传到空间后能识别这样就增加了空间的利用率啊,以不至于很多相同的图片被重复上传而保存在服务器上面。

可不可以实现呢?

除了图片,其它文件也有唯一的标示吧,也可以实现这样的吧。

有没有这样做的必要呢?

当然可以实现的。参见我在这个问题的回答。

而本地文件MD5的判断,就得借助浏览器和 JavaScript 了,现代浏览器都支持 FileReader ,可以读取本地文件,然后使用 JavaScript 来计算文件的 MD5 值,再把 MD5 值传到服务器端判断文件是不是已经在此前上传过了。

有个更好的方案,文件名字统一以文件本身的md5加盐生成,只用比较文件名就可以了!规则可以自己定

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn