У меня есть фронтэнд в Angular 4 и Back end в Dot net, у меня есть один URL, и когда я нажимаю этот URL в браузере, скачивается PDF, но я хочу показать его в браузере.
Я получил этот URL через вызов get, а затем открываю этот URL в новом окне, но он всегда загружается.
Вот что я пробовал:
ts код файла:
this.http.get(this.pdfUrl, { params: { data: JSON.stringify(prospect) }})
.subscribe(data => {
var strWindowFeatures = "location=yes,height=570,width=520,scrollbars=yes,status=yes";
window.open(data.url, "_blank", strWindowFeatures);
},
error => {
console.log(error);
})
]).then(function (result) {
if (result) {
console.log("ok");
}
});
В ответ на этот запрос get я получаю данные файла PDF в зашифрованном виде и URL-адрес, по которому загружается PDF.
код моего контроллера:
HtmlToPdf converter = new HtmlToPdf();
var rootDir = this.environment.ContentRootPath;
rootDir = this.environment.ContentRootPath + "/bin/Debug/netcoreapp2.0";
IHTMLTemplateProvider proposalProvider = new ProposalProvider();
proposalProvider.LoadDocument(rootDir + "/templates/Proposal.html");
proposalProvider.ParseDocument();
string notificationContent = await proposalProvider.GetDocumentInText().ConfigureAwait(false);
SelectPdf.PdfDocument doc = converter.ConvertHtmlString(notificationContent);
byte[] pdfData = doc.Save();
doc.Close();
return File(pdfData, "application/pdf", "document.pdf");