android - Retrofit POST with a json object containing parameters -
android - Retrofit POST with a json object containing parameters -
i'm using retrofit send post request server:
@post("/login") void login( @body user user ,callback<user> callback); where user object has email , password fields.
checking logs, can see parameters sent format:
d/retrofit﹕{"email":"example@test.com","password":"asdfasdf"} what need parameters sent this?
{"user" : {"email":"example@test.com","password":"asdfasdf"} }
edit: making right way, using custom jsonserializer:
public class customgsonadapter { public static class useradapter implements jsonserializer<user> { public jsonelement serialize(user user, type typeofsrc, jsonserializationcontext context) { gson gson = new gson(); jsonelement je = gson.tojsontree(user); jsonobject jo = new jsonobject(); jo.add("user", je); homecoming jo; } } } and then, on api client builder:
public static restapiclient buildapiservice() { gson gson = new gsonbuilder() .setfieldnamingpolicy(fieldnamingpolicy.lower_case_with_underscores) .registertypeadapter(user.class, new customgsonadapter.useradapter()) .create(); restadapter restadapter = new restadapter.builder() .setendpoint(api_url) .setconverter(new gsonconverter(gson)) .build(); homecoming restadapter.create(mudamosapi.class); } android json gson retrofit
Comments
Post a Comment