Retrofit: 500 internal server error
31,430
It seems that in postman you're sending an array of FriendModel, but in your code you're sending a single object.
Just change the object you're sending, and instead of sending a single object, send a List as the server expects
List<FriendModel> friendsList = new ArrayList<FriendModel>();
FriendModel ff = new FriendModel();
ff.setFriendNumber("380935275259");
ff.setId(516);
ff.setNumber("380936831127");
friendsList.add(ff);
You should also change this signature:
public void getFriendsLocation(@Body FriendModel friendModel, Callback<List<FriendLocationModel>> response);
to
public void getFriendsLocation(@Body List<FriendModel> friendModel, Callback<List<FriendLocationModel>> response);
Author by
kkost
Updated on July 09, 2022Comments
-
kkost almost 2 years
I have 500 internal server error, every time when i try to send POST request via Retrofit. When i sending GET request, it sending correctly. I'm sure that with serverside everyting is ok. What's wrong with my code ?
String ENDPOINT = "http://52.88.40.210"; //model for request FriendModel ff = new FriendModel(); ff.setFriendNumber("380935275259"); ff.setId(516); ff.setNumber("380936831127"); RestAdapter adapter = new RestAdapter.Builder() .setEndpoint(ENDPOINT) .build(); WayfAPI api = adapter.create(WayfAPI.class); api.getFriendsLocation(ff, new Callback<List<FriendLocationModel>>() { @Override public void success(List<FriendLocationModel> friendLocationModels, Response response) { for (FriendLocationModel ff : friendLocationModels) { Log.d("myLogs", "===========Successful=========="); Log.d("myLogs", "Id: " + ff.getId()); Log.d("myLogs", "Number: " + ff.getNumber()); Log.d("myLogs", "GeoLocation: : " + ff.getGeoLocation()); } } @Override public void failure(RetrofitError error) { Log.d("myLogs", "-------ERROR-------"); Log.d("myLogs", Log.getStackTraceString(error)); } }); }
Declaration of request:
@Headers({ "Accept: application/json", "Content-type: application/json" }) @POST("/api/geo/getLoc") public void getFriendsLocation(@Body FriendModel friendModel, Callback<List<FriendLocationModel>> response);
-
kkost over 8 yearsThank you, i'm looking to answer for this question a few last days. Thank you.