我可以在新窗口中获取pdf,其中URL为
htts://mydomainname/410-8d9c-4883-86c5-d76c50a24a1d
我想在生成的网址中删除自动生成的blob名称(410-8d9c-4883-86c5-d76c50a24a1d),并将我的自定义名称链接放在下面
htts://mydomainname/filename
我需要对以下代码进行哪些修改
var file = new Blob([response], {type: 'application/pdf'});
var fileURL = URL.createObjectURL(file);
$window.open(fileURL);
答案 0 :(得分:1)
不确定此代码的确切位置,但这是使用XmlHttpRequest“onload”的解决方案。
oReq.onload = function(e) {
if (this.status === 200) {
const blob = new Blob([oReq.response], { type: "image/pdf"})
let a = document.createElement("a");
a.style = "display: none";
document.body.appendChild(a);
let url = window.URL.createObjectURL(blob);
a.href = url;
a.download = 'myFile.pdf'; // gives it a name via an a tag
a.click();
window.URL.revokeObjectURL(url);
} else {
// handler error eee
}
}
基本上而不是 $ window.open(fileURL); 您需要以编程方式创建一个锚标记,并使用 window.URL.createObjectURL 设置其href,如您所做的那样上方。
希望这有帮助,
马特