我有一个vb.net处理程序文件,可以像这样发送pdf:
context.Response.Clear()
context.Response.StatusCode = 200
context.Response.ContentType = "application/pdf; charset=utf-8"
context.Response.AddHeader("Content-Disposition", "attachment; filename=" & filename)
context.Response.Write(pdfContent)
context.ApplicationInstance.CompleteRequest()
我在javascript端尝试过类似的方法:
$ajax(url, {
type: "POST",
dataType: "text",
data: JSON.stringify(idRequestObj),
contentType: "application/pdf; charset=utf-8",
contentDisposition: "attachment; filename=print.pdf",
success: function (pdfContent) {
if (pdfContent != null && pdfContent != "") {
var blob = new Blob([pdfContent], { type: 'application/pdf; charset=utf-8' });
var link = document.createElement('a');
link.href = window.URL.createObjectURL(blob);
link.download = "file.pdf";
link.click();
}
else{
//smthg
},
error://error handled
};
目前,它下载了pdf文件,但空白。
我无权访问download.js。 我必须使用“发布”类型的请求。 知道为什么我的pdf为空白吗? 我必须使用ajax。
p.s:它必须至少适用于IE 10。