我尝试使用jQuery将文件上传到Backblaze B2存储。正在从表单中直接读取文件内容:
var file = document.getElementById('file_input').files[0];
在获得所有必要的标题后,我终于写了POST请求:
var xhr = new XMLHttpRequest();
xhr.setRequestHeader('Authorization', authToken);
xhr.setRequestHeader('X-Bz-File-Name', fileName);
xhr.setRequestHeader('Content-Type', contentType);
xhr.setRequestHeader('X-Bz-Content-Sha1', sha1);
xhr.open("POST", uploadUrl, true);
xhr.send(file);
不幸的是,我收到了CORS错误(缺少CORS标头并阻止了对url的远程请求)。在Amazon S3上,可以选择设置CORS策略。在Backblaze我没有看到任何。是否有可能以另一种方式发送文件,或者如果不是,我应该向Backblaze B2支持团队寻求解决方案吗?
请注意:例如使用带有python的urllib2和默认的backblaze B2 turtorial一切都很顺利,示例文本文件已成功上传。