Retrofit-POST mit json-Objekt mit den Parametern
Ich bin mit der Nachrüstung zu senden POST
Anfrage zu meinem server:
@POST("/login")
void login( @Body User user ,Callback<User> callback);
Wo meine user
Objekt nur email
und password
Felder.
Überprüfung der logs kann ich sehen, dass meine Parameter gesendet werden, die mit diesem format:
D/Retrofit﹕{"email":"[email protected]","password":"asdfasdf"}
Was muss ich tun, um meine Parameter gesendet werden, wie diese?
{"user" : {"email":"[email protected]","password":"asdfasdf"} }
- ich will auch das erstellen derselben jsonrequest mit retrofit-wie unten { "params":{"email":"[email protected]","password":"ni1234","firstName":"Nilesh","lastName":"Aher"}} Können Sie mir Stück code
Du musst angemeldet sein, um einen Kommentar abzugeben.
EDIT: der richtige Weg, mithilfe einer benutzerdefinierten
JsonSerializer
:Und klicken Sie dann auf die API-Client-builder:
Der einfachste Modus, um Ihr problem zu lösen, ist das erstellen einer RequestPOJO Klasse, zum Beispiel:
Datei User.java:
Datei LoginRequestPojo.java:
Dein retrofit-2 Anforderung:
Schließlich, Ihren Wunsch-Körper:
{"user":{"email":"[email protected]","password":"123123"
}}class
dass tut fast nichts. Ein besserer Ansatz ist zu zentralisieren alle JSON verbundenen Umgang innerhalb einerGsonAdapter
oder vielleicht verwenden Jackson mit Anmerkungen auch! 🙂