Ich habe viele Probleme mit dem Senden einer jsPDF erstellten PDF-Datei an eine .NET-API mit AJAX POST. Jetzt könnte ich base64 verwenden, würde es aber lieber nicht, weil es die Dateigröße stark erhöht. Wenn das PDF-Erstellung (jsPDF: doc.output) das Ergebnis, das Sie ist ein ‚string‘ wie das erste Bild zu erhalten, wird diese Datei korrekt erstellt, so dies ist nicht das Problem:Senden von PDF-Datei mit AJAX POST zu ASP.NET API
nächster Schritt sein, die Daten zu senden, für das ich ein Javascript-Formdata() Objekt bin mit:
var data = new FormData();
data.append("json", jsonData);
data.append("pdf", pdfData); //pdfData = doc.output()
Es gibt auch einigen JSON Inhalt, weil mit der PDF-Datei hinzugefügt wollen wir auch zusätzliche Daten gesendet.
Der nächste Schritt ist die AJAX-Methode:
$.ajax({ url: url, headers: header, data: data, method: 'POST', contentType: false, processData: false }).success(function (data, textStatus, jqXHR) { console.log("succes"); }).error(function (jqXHR, textStatus, errorThrown) { console.log("error"); });
Nun, wenn diese an den Server sendet, ich in der Registerkarte Netzwerk schauen und sehen, dass nicht alle Daten gesendet werden:
Die Inhaltslänge ist nur 1918 lang und in den nächsten Bildern können Sie sehen, wie es vom Server empfangen wird:
Der Inhalt des JSON obejct ist wörtlich: [object] [object] Während die pdf-Datei nur teilweise nur die erste gesendet, 99 macht es an den Server (siehe nächstes Bild):
Wenn jemand hat jede Beratung zu diesem Thema wäre es eine große Hilfe seiner Ursache ich habe diese pr zu beheben versucht, Problem für mehr als einen Tag (und wenn es wirklich notwendig ist, werde ich zurück zu base64 gehen müssen).
Dank
wirklich niemand ... – lordvlad30