上传前更改文件内容(Alter file contents before uploading)

2019-10-20 08:05发布

我想..我们使用fineuploader上传到我们的服务器之前的文件内容进行加密。

我想这样做的是:

function onSubmitted(id)
{
    var file = uploader.getFile(id);
    var reader = new FileReader();

    reader.onload = function (e) {
      //encrypt here

      // but how do I save the file back to fineuploader?

      //then continue to submit/upload
     };

   reader.readAsArrayBuffer(file);
}

有没有这样做开箱的任何方式或将我需要诉诸猖獗两轮牛车:) :)

Answer 1:

如何返回false从拒绝文件onSubmit ,对其进行加密,然后通过重新提交加密版本addBlobs API方法。 例如:

callbacks: {
    onSubmit: function(id) {
        if (!fileOrBlob.blob || !fileOrBlob.blob.encrypted) {
            var fileOrBlob = uploader.getFile(id),
                reader = new FileReader();

            reader.onload = function (e) {
                //encrypt here

                encryptedBlob.encrypted = true;
                uploader.addBlobs({name: fileOrBlob.name, blob: encryptedBlob});
            };

            reader.readAsArrayBuffer(file);

            return false;
        }
    }
} 

注:以上没有经过测试。 如果遇到严重的问题,我会在大约9小时后再返回。



文章来源: Alter file contents before uploading