I am using retrofit library for post request. But I'm getting empty field area error from server. So my parameters("signin[password] and signin[username]") go empty to server. Where is my mistake ? Thank you
Retrofit retrofit = new Retrofit.Builder()
.baseUrl("http://myurl.com/")
.addConverterFactory(GsonConverterFactory.create())
.build();
Interfacem service = retrofit.create(Interfacem.class);
SignBody body=new SignBody("username","pass");
Call<ResponseBody> result =service.getResponse(body);
result.enqueue(new Callback<ResponseBody>() {
@Override
public void onResponse(Response<ResponseBody> response) {
try {
System.out.println(response.body().string().toString());
System.out.println(response.errorBody().string().toString());
} catch (IOException|NullPointerException e) {
e.printStackTrace();
}
}
@Override
public void onFailure(Throwable t) {
t.printStackTrace();
}
});
SignBody class as below:
public class SignBody {
@SerializedName("signin[username]") @Expose private String username;
@SerializedName("signin[password]") @Expose private String password;
public SignBody(String username, String password) {
this.username = username;
this.password = password;
}
}
finally Interfacem.class :
public interface Interfacem {
@POST("/login")
Call<ResponseBody> getResponse(@Body SignBody body);
}
There is not any problem when I tried postman same think. postman screenshot