我正在使用 Sharetribe 平台,我无法触及服务器代码,只能访问自定义脚本。所以我使用 jquery ajax 将文件上传和下载到 Dropbox。上传过程很顺利,但下载的一个问题是下载的文件已损坏。任何pdf软件都打不开。我还发现文件的大小比我的保管箱中的原始 pdf 文件大。原pdf文件不错,可以完美打开。
这是下载文件的代码
var url = 'https://content.dropboxapi.com/2/files/download';
$.ajax({
url: url,
type: 'post',
responseType: 'arraybuffer',
headers: {
"Authorization": "Bearer <TOKEN>",
"Dropbox-API-Arg": JSON.stringify({"path": "/"+filename})
},
success: function (data){
console.log(data);
//CAN DOWNLOAD PDF BUT CAN'T OPEN IT. FILE PDF IS CORRUPT
//var blob = new Blob([data]);
//var aLink = document.createElement('a');
//aLink.href = window.URL.createObjectURL(blob);
//aLink.download = "file_tc.pdf";
//aLink.click();
const url = window.URL.createObjectURL(new Blob([data], { type: 'application/pdf' }));
window.open(url);
},
error: function (data){
console.log(data);
}
})
任何人都可以帮助上面的代码有什么问题?