Tach!
function encode (form) { return new URLSearchParams(new FormData(form)).toString() }
Das liefert leider nicht den gewünschten Enctype.
Nun, eine Lösung die funktioniert habe ich hier mal festgehalten (mit Demo).
// multipart/form-data var fdata = new FormData(form); var q = new URLSearchParams(); for (const [key, val] of fdata.entries()) { q.append( key, val ); } // application/x-www-form-urlencoded xhr.send( q.toString() );
Wenn die obige nicht richtig sein soll, die untere aber schon, wo ist da jetzt der Unterschied, außer dass du unnötigerweise die Daten mit For-Schleife an URLSearchParams übergibst, statt dem Konstruktor die Arbeit zu überlassen?
dedlfix.