Я использую модификацию, чтобы использовать REST API.
Я продолжаю получать 400 bad request
с моего сервера и не могу преобразовать ошибку в строку.
Когда я попытался выполнить POST из приложения chrome POSTMAN, запрос был выполнен успешно, и я получил ответ 201 created
(новый пользователь).
вот мои зависимости:
compile 'com.google.code.gson:gson:2.4'
compile 'com.squareup.retrofit:retrofit:2.0.0-beta2'
compile 'com.squareup.retrofit:converter-gson:2.0.0-beta2'
compile 'com.squareup.okhttp:okhttp:2.7.0'
вот мой интерфейс:
public interface PingMeApi {
@Headers({"Content-Type: application/json", "Accept: text/html"})
@POST("/users/")
Call<User> createUser(@Body User user);
}
вот мой запрос POST:
Call<User> call = pingMeApplication.apiService.createUser(user);
call.enqueue(new Callback<User>() {
@Override
public void onResponse(Response<User> response, Retrofit retrofit) {
/// How can I parse the response here????
String result;
try {
result = response.errorBody().string();
} catch (IOException e) {
e.printStackTrace();
}
}
@Override
public void onFailure(Throwable t) {
}
}
Кажется, я не могу разобрать ответ на onResponse
, поэтому не могу понять, в чем ошибка.
в документах написано - http://inthecheesefactory.com/blog/retrofit-2.0/en что если я получу ошибку, будет вызван onResponse
, и я увижу строку ошибки в response.errorBody().string()
, но это пустая строка.
Любые идеи??