问题是
CryptoJS函数返回的对象不是字符串,因此您必须先对它进行字符串化,然后再尝试发送。
var jqxhr = $.ajax({ url: "/api/files/upload", type: "POST", data: { 'name': fname, 'data': fdata.toString(), 'key': skey.toString() } });http://jsfiddle.net/wob66Lc0/1/
加密也适用于不是文本的字节,因此您应该以二进制字符串而不是文本的形式读取文件
fr.readAsBinaryString(input.files[0]);



