我们在使用Mac的办公室加载项中遇到了问题。我们无法从mac上的office-add-in下载文件。与Windows平台相同的加载项工作正常。
我们已经从API Response构建了blob类型数据。相同的blob类型传入SaveAs方法的FileSaver.js。我们使用FileSaver.js将文件保存在word office加载项上。
注意:在Windows平台上一切正常。我们已经实现了与以下链接示例相同的html下载链接属性,但由于安全问题而无法使用。
https://github.com/OfficeDev/Office-Add-in-JavaScript-FileDownload
Force download a pdf link using javascript/ajax/jquery
这是我们的示例代码。
var getMessageUrl = "https://test.xxx.xxx/api/xxx/testcontroller/GetTest?id=121212121212";
var oReq = new XMLHttpRequest();
oReq.open("GET", getMessageUrl, true);
oReq.responseType = "arraybuffer";
oReq.setRequestHeader('X_ConnectTo', 'X-Author-CRM');
oReq.setRequestHeader('Access-Control-Allow-Origin', '*');
oReq.setRequestHeader('Access-Control-Allow-Methods', 'GET,POST,PUT,DELETE,OPTIONS');
oReq.setRequestHeader('Access-Control-Allow-Headers', 'Authorization, Content-Type,Accept, Origin');
oReq.setRequestHeader('Authorization', 'Bearer XXXXXXXXX-Token-XXXXXXX');
oReq.setRequestHeader('Content-Type', 'application/json; charset=utf-8');
oReq.onload = function (oEvent) {
var blob = new Blob([oReq.response], { type: "application/octet-binary" });
saveAs(blob, 'Test1234.docx');
};
oReq.send();
这里
我想知道这个问题是否类似于我们在Script Lab,https://github.com/OfficeDev/script-lab/issues/458中发现的问题?如果是这样,它可能是一个平台错误/限制,尽管进一步调查它会很好。在该问题中查看更多内容。如果你能确认它是否是同一个问题,那将是一个很好的第一步。谢谢!