我正在使用外部Rest API获取包装的标签。作为回应,我有:
%PDF-1.4\n%����\n6 0 obj\n<</ColorSpace[/Indexed/DeviceRGB 255(\0\0\0 [...]
现在我需要在浏览器中显示PDF
var xhr = new XMLHttpRequest();
xhr.open('POST', '/Order/CreateShipmentInpost', true);
xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
xhr.responseType = 'arraybuffer';
xhr.onload = function (e) {
if (this.status == 200) {
var blob = new Blob([this.response], { type: "application/pdf" });
var link = document.createElement('a');
link.href = window.URL.createObjectURL(blob);
link.download = "Report.pdf";
link.click();
}
};
xhr.send($.param(data));
在生成的PDF文件中只有空白页。我不知道为什么内容没有显示。
我正在使用responseType = 'arraybuffer'
。控制器返回:
return File(Encoding.UTF8.GetBytes(data, MediaTypeNames.Application.Pdf);
我也尝试返回json或字符串,但是PDF始终为空。