Я використовую Retrofit для доступу до програми RESTful. Основна URL-адреса:
Це код інтерфейсу:
public interface ExampleService {
@Headers("Accept: Application/JSON")
@POST("/album/featured-albums")
Call<List<Album>> listFeaturedAlbums();
}
і ось як я надсилаю запит і отримую відповідь:
new AsyncTask<Void, Void, Response<List<Album>>>() {
@Override
protected Response<List<Album>> doInBackground(Void... params) {
Retrofit retrofit = new Retrofit.Builder()
.baseUrl("http://api.example.com/service")
.addConverterFactory(GsonConverterFactory.create())
.build();
ExampleService service = retrofit.create(ExampleService.class);
try {
return service.listFeaturedAlbums().execute();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
@Override
protected void onPostExecute(Response<List<Album>> listCall) {
Log.v("Example", listCall.raw().toString());
}
}.execute();
журнал, який я отримую, це дивна річ:
V / Приклад ﹕ Відповідь {протокол = http / 1.1, код = 404, повідомлення = Не знайдено, url = http://api.example.com/album/featured-albums }
Що тут відбувається?