[上传组件]如何将文件的哈希值,md5或sha256之类传回后台?
2017-10-08 23:05:38
单挑
  • 访问次数: 13
  • 注册日期: 2017-07-21
  • 最后登录: 2017-10-10

因为需要做类似于秒传之类的功能。现在的情况是:即使是同一个文件,传回后台的uuid每次都不一样。

我知道有一个spark-md5.js的组件可以计算,但是需要原始的file对象。zui封装的plupload里并不是原始file对象,所以没办法利用到。

请问还有别的什么办法吗???

沙发
2017-10-08 23:42:51
单挑
  • 访问次数: 13
  • 注册日期: 2017-07-21
  • 最后登录: 2017-10-10
可以,原来有这个方法。file.getNative()可以获取到原始file对象
板凳
2017-10-09 00:34:35
单挑
  • 访问次数: 13
  • 注册日期: 2017-07-21
  • 最后登录: 2017-10-10
不过还是没有办法。因为需要用到filereader.onload事件,而zuiuploader 回调不会等待。所以没计算完hash,就已经上传文件。如果在回调里使用循环监听延时函数的状态的话,会导致页面卡住。变成死锁了,zuiuploader能加入延时函数的处理吗?
#3
2017-10-09 20:26:15
sunhao
  • 访问次数: 277
  • 注册日期: 2015-04-20
  • 最后登录: 2023-12-13

你可以禁用文件自动上传,只有hash计算完毕后才允许上传文件。

#4
2017-10-09 21:29:42
单挑
  • 访问次数: 13
  • 注册日期: 2017-07-21
  • 最后登录: 2017-10-10
@sunhao 用的就是手动点击上传啊。在onBeforeUpload事件做的。
#5
2017-10-10 10:06:47
sunhao
  • 访问次数: 277
  • 注册日期: 2015-04-20
  • 最后登录: 2023-12-13
你应该在文件被添加到上传队列就开始计算,计算过程中将上传按钮设置为不可用,计算完毕才允许上传。
#6
2017-10-10 21:42:36
单挑
  • 访问次数: 13
  • 注册日期: 2017-07-21
  • 最后登录: 2017-10-10
@sunhao 治标不治本儿,这样添加多个文件的时候,那不是得等所有文件计算完才能上传。能不能像webuploader那样提供个deferred,用来将各种事件串联起来运行,这样的话才能根本解决问题..
#7
2017-10-11 09:00:00
sunhao
  • 访问次数: 277
  • 注册日期: 2015-04-20
  • 最后登录: 2023-12-13
目前还不能。
1/1