hotti: POST-Daten im Ajax nicht korrekt?

Beitrag lesen

ein Upload funktioniert nur mit dem Enctype="multipart/form-data" und method="POST". Wenn file ein Objekt File ist (quasi ein Blob), wird dieser Enctype erstellt, mehrere Parts enthaltend (wie der Name schon sagt), welche infolge einer Boundary voneinander getrennt sind.

Bei Dir kommt dieser Enctype nicht zustande, daher die Fehlermeldung wegen der fehlenden Boundary. Dein document.share ist wahrscheinlich kein Formular-Objekt. Mach das alles einmal über ein ganz normales Formular mit den entsprechenden Attributen, übergib das Formular-Objekt dem Konstruktor FormData und sende das FormData-Objekt per POST. Dann funktionier auch das Upload mit Ajax. Btw. den Request-Header Content-Length: form_data.length lass weg, das liefert ohnehin nicht den richtigen Wert. Im Prinzip mussr Du nur das FormData-Objekt richtig erstellen, wenn Du das Formular-Objekt übergibst, sind alle Eingaben und auch die Datei im Request mit diesem Enctype enthalten.

MfG