我正在开发一个Javascript应用程序,我需要使用Mediafire REST API来上传文件。(请参阅此处上传文件)。
按照这个MDN 教程和一些研究,我已经编写了下面的代码,但似乎它不起作用......注意我暂时不需要控制进度等等,我只想做可以进行最基本的上传操作...
另请注意,我可以使用不同的代码,甚至可以使用 jQuery 或其他(免费)库,所以如果您有更好的代码来上传文件,我将不胜感激......
var controller = this;
var file = $("#file").get(0).files[0];
//The file is correctly retrieved here...
var xhr = new XMLHttpRequest();
xhr.open('POST', 'http://www.mediafire.com/api/upload/upload.php?session_token=' + controller.sessionToken.token);
//(The session_token is valid)
xhr.overrideMimeType('text/plain; charset=x-user-defined');
xhr.setRequestHeader('x-filesize', file.size);
var reader = new FileReader();
reader.onload = function (evt) {
var uInt8Array = new Uint8Array(evt.target.result);
//It seems that here the ArrayBuffer is read correctly,
//and I converted it to a ArrayBufferView because Chrome suggested it...
xhr.send(uInt8Array);
};
reader.readAsArrayBuffer(file);
我无法说出具体的错误,我只知道什么都没有发生......但也许看看代码你会看到一些明显的错误......我唯一看到的是在 Chrome 的控制台中:
注意:我知道这个问题的质量不是理想的,而且它太模糊了,但我尽量考虑到我对所有这些技术都是全新的......