Как открыть файл PDF вместо загрузки его в браузере в угловом? - PullRequest
0 голосов
/ 14 марта 2019

У меня есть фронтэнд в 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");
...