我想在上传到我们的服务器之前加密文件的内容..我们正在使用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);
}
有没有办法开箱即用,或者我需要诉诸猖獗的hackery :) :)
答案 0 :(得分:2)
如何返回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小时后再回来查看。