Я использую модификацию для получения данных с http-адреса. Мой интерфейс Класс:Получение пустого тела в модификации Response
public interface SlotsAPI {
/*Retrofit get annotation with our URL
And our method that will return a Json Object
*/
@GET(url)
retrofit.Call<JSONObject> getSlots();
}
Мой метод запроса.
public void getResponse(){
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(URL)
.addConverterFactory(GsonConverterFactory.create())
.build();
//Creating an object of our api interface
SlotsAPI api = retrofit.create(SlotsAPI.class);
retrofit.Call<JSONObject> callback = api.getSlots();
callback.enqueue(new Callback<JSONObject>() {
@Override
public void onResponse(Response<JSONObject> response) {
if (response != null) {
Log.d("OnResponse", response.body().toString());
}
}
@Override
public void onFailure(Throwable t) {
t.printStackTrace();
}
});
}
В ответе я получаю пустое тело. И сервер отвечает 200 OK.
D/OnResponse: {}
Но когда я открываю URL-адрес в браузере, я получаю JSONObject на экране.
Можете ли вы предоставить URL-адрес? –
Извините, я не могу.Но это обычная ссылка http. – Viking93
Я предлагаю вам использовать такой инструмент, как Fiddler или Charles, и прокси-сервер, проходящий через них. Затем вы можете сравнить различия в запросах и получить представление. Возможно, это из-за строки UserAgent. –