getParameter() liefert null

RezaScript

Bekanntes Mitglied
Hallo,

ich habe ein Formular und wenn ich es abschicke, bekomme ich so den Wert:

Java:
System.out.println(req.getParameter("username"));

Ohni Ajax funktioniert das bestens aber mit der Fetch API ist die Ausgabe null.

Javascript:
const log = console.log.bind(console);

document.getElementById('login').addEventListener('submit', (e) => {
    e.preventDefault();

    const loginData = new FormData();

    fetch('login', {
        method: 'POST',
        body: { username: 'test' }
    })
    .then((response) => {
        return response;
    })
    .then((data) => {
        log(data);
    })
    .catch(err => {
        console.error(err);
    })
});

Funktioniert das vielleicht deshalb nicht, weil es kein Array ist, sondern ein Objekt?

Ich habe es auch so probiert:
Java:
req.getParameterMap().entrySet().stream().map(e -> e.getKey() + " -> " + Arrays.toString(e.getValue())).forEach(System.out::println);
Der gibt mir gar nichts zurück.
 

mihe7

Top Contributor
Probier mal:
Javascript:
    const loginData = new FormData();

    loginData.append("username", "test");

    fetch('login', {
        method: 'POST',
        body: loginData
    })
    ...
 

mihe7

Top Contributor
Ja, sehe gerade, dass FormData immer als multipart/form-data versendet wird, während der Standard bei HTML-Formularen application/x-www-form-urlencoded ist. Du hast also zwei Möglichkeiten: in neueren Browsern sollte es funktionieren, wenn Du statt FormData URLSearchParams verwendest (oder Du kodierst es eben selbst entsprechend) oder Dein Servlet arbeitet mit Multipart-Daten (getParts() usw.)
 

RezaScript

Bekanntes Mitglied
Also ich habs jetzt grad mit System.out.println(req.getPart("username")); probiert. Gibt mir auch null aber das mit dem URLSearchParams klappt bestens. Danke für den Hinweis! :)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
T getParameter("id") = null - warum? Web Tier 8
7 kein Absatz mittels request.getParameter()?? Web Tier 8
ruutaiokwu request.getParameter() Web Tier 3
P request.getParameter("name") von Formular auf JSP-Seite leer Web Tier 5
E Problem mit request.getParameter Web Tier 5
R @OnClose liefert Errors Web Tier 2
P FacesContext.getCurrentInstance () liefert Null Web Tier 6
A Debuggen liefert anderes Ergebnis als Ausführen Web Tier 2
S PathParam null Web Tier 5
L Set<T> Attribut eines Objektes wird zu null in thymeleaf Web Tier 2
G JSF JSF 2.3 Converter injection/persistence context -> null Web Tier 2
D Spring Sessions sind null Web Tier 10
FINF_AW_Alex Bin ich jetzt bekloppt?!? / Property not found (resolved tu null) Web Tier 5
S value auf null setzen Web Tier 3
J JSF BigInteger nicht null sondern 0 Web Tier 3
J Nach SVN-Update alle Beans resolved to null Web Tier 3
J facesContext ist null bei seam-Projekt Web Tier 3
D JSF EL #{not null bean.property} Parse exception Web Tier 2
B JSF,JPA = [ id=null ] is not a known entity type. Web Tier 3
G Servlet getSession(false) in HttpServletRequest gibt nie null zurück Web Tier 3
J JSF/CDI - Target Unreachable, identifier 'user' resolved to null Web Tier 5
P JSF Formularwert null Web Tier 10
T Seam-Projekt Eingabefeld mit "null"-Wert Web Tier 7
H facestrace - null pointer exception Web Tier 3
G Tomahawk FileUpload UploadedFile ist null Web Tier 4

Ähnliche Java Themen

Neue Themen


Oben