>  기사  >  백엔드 개발  >  网站图片上传可以实现秒传功能吗?

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

WBOY
WBOY원래의
2016-06-06 20:29:061173검색

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

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

可不可以实现呢?

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

有没有这样做的必要呢?

回复内容:

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

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

可不可以实现呢?

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

有没有这样做的必要呢?

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

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

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

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.