Ich versuche, eine PDF-Datei mit Ajax/Jquery herunterzuladen und zu speichern (ich weiß …).
Serverseitig habe ich folgendes:
public HttpResponseMessage GetPdf()
{
var pdf = generatePdfByteArray(); // byte[]
var result = Request.CreateResponse(HttpStatusCode.OK);
result.Content = new ByteArrayContent(pdf);
//result.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment")
//{
// FileName = "blah.pdf"
//};
// tried with and without content disposition.. shouldn't matter, i think?
result.Content.Headers.ContentType = new MediaTypeHeaderValue("application/pdf");
return result;
}
Das ist die Client-Seite:
let ajaxOptions = {
url: '/url',
type: "GET",
accepts: "application/pdf",
success: (data) => {
let blob = new Blob(data, {
type: "application/pdf"
}); // <-- this fails
// stuff...
}
};
$.ajax(ajaxOptions);
Irgendwelche Ideen, was daran falsch ist?
Warum Sie Blob machen möchten, klicken Sie einfach auf den Anker oder die Schaltfläche, die die API aufruft. Der Rest wird vom Browser erledigt
– Negi Rox
13. März 2019 um 3:32 Uhr
Weil ich den Anruf abfangen und eine Meldung anzeigen möchte, wenn auf dem Server etwas schief geht
– Thinkhoop
13. März 2019 um 13:39 Uhr