Скачать pdf с помощью MVC httpresponse и angularjs
Я попытался сделать это следующим образом...Пожалуйста, дайте мне понять, где я ошибаюсь.....
с#
....
byte[] bytes = memoryStream.ToArray(); memoryStream.Close(); httpResponseMessage.Content = new ByteArrayContent(bytes.ToArray()); httpResponseMessage.Content.Headers.Add("x-filename", fileName); httpResponseMessage.Content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream"); httpResponseMessage.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment"); httpResponseMessage.Content.Headers.ContentDisposition.FileName = fileName; httpResponseMessage.StatusCode = HttpStatusCode.OK; return httpResponseMessage;
в angularjs
$http({ method: 'post', url: basePath + '/profile/downloadpdf_fromedit', // data: JSON.stringify($scope.paginginfostmntaccnt), responsetype: 'arraybuffer', headers: {'content-type': 'application/pdf'}, // headers: { 'content-type': 'application/json' } }) .then(function (response) { // console.log(response.data); $scope.dataDetail = response.data; console.log($scope.dataDetail) 1. var file = new Blob([response.data], { type: 'application/pdf' }); saveAs(file, 'StatementofAccount.pdf');
//урл-файл:///с:/Пользователи/Тушар/загрузки/StatementofAccount.формат PDF
//не удалось загрузить pdf-файл
2.var file = new Blob([response], { type: 'application/pdf' }); var fileurl = URL.createObjectURL(file); window.open(fileurl);
//url-blob:http: / / localhost:16311 / 02f8d85e-74c0-4ccd-b937-22f02cc3866c
// не удалось загрузить pdf-документ
3.
.success(function (data, status, headers, config) { // any required additional processing here var results = []; results.data = data; results.headers = headers(); results.status = status; results.config = config; console.log(results) $("#loading").hide(); headers = headers(); var filename = headers['x-filename']; var contentType = headers['content-type']; if (!filename) { filename = headers["x-filename"] || 'statementAccount.pdf'; } var linkElement = document.createElement('a'); try { var blob = new Blob([data], { type: contentType }); var url = window.URL.createObjectURL(blob); linkElement.setAttribute('href', url); linkElement.setAttribute("download", filename); var clickEvent = new MouseEvent("click", { "view": window, "bubbles": true, "cancelable": false }); linkElement.dispatchEvent(clickEvent); $("#loading").hide(); console.log("filename" + filename); } catch (ex) { console.log("catch"+ex); $("#loading").hide(); } })
//урл-файл:///с:/Пользователи/Тушар/загрузки/statementAccount.формат PDF
// не удалось загрузить pdf-документ
Что я уже пробовал:
Код, который я попробовал, я включил в запрос.