Существует довольно много учебных пособий, но я выбил очень быстрый пример для вас, извините слегка поспешный код и т. Д., Надеюсь, вы получите эту идею.
Ваш интерфейс отдых:
public interface MyRetrofit {
@POST("/users")
Call<MyResponse> postUser(@Body MyRequest body);}
Ваш Модифицированная создать
OkHttpClient.Builder okHttpClientBuilder = new OkHttpClient.Builder();
Retrofit retrofit = new Retrofit.Builder()
.baseUrl("http://little-silence-8649.getsandbox.com")
.client(okHttpClientBuilder.build())
.addConverterFactory(GsonConverterFactory.create())
.build();
apiInterface = retrofit.create(MyRetrofit.class);
Вызов
MyRequest req = new MyRequest();
req.setName("Kermit");
Call<MyResponse> task = apiInterface.postUser(req);
task.enqueue(new Callback<MyResponse>() {
@Override
public void onResponse(Call<MyResponse> call, Response<MyResponse> response) {
Log.d(TAG, "Success");
}
@Override
public void onFailure(Call<MyResponse> call, Throwable throwable) {
Log.e(TAG, "onFailure: ", throwable);
}
});
Это должно быть очень понятно. Вы создаете свой интерфейс, который определяет все ваши вызовы REST на первом шаге. Затем на втором шаге вы создаете экземпляр модифицированной передачи в клиентском интерфейсе ok и gson converter. Конвертер gson преобразует ваши запросы в json.
Затем, наконец, звонок. Я создаю запрос, это всего лишь pojo и передайте это с помощью модифицированного api. Мы используем enqueue, потому что мы находимся в основном потоке, и мы хотим, чтобы модификация обрабатывала сети в новом потоке. Когда это будет завершено, мы перейдем к onResponse или onFailure.
Надеюсь, это поможет.
P.S В этом примере используется Sandbox, который является удивительным инструментом тестирования интерфейсов REST.
* Я почти опробовал все пути * ... Трудно поверить ... Если бы было так, почему вы не делились с нами тем, что вы пробовали до сих пор? – Selvin
Итак, вы хотите, чтобы я опубликовал весь код здесь, что я пробовал до сих пор. Поэтому для вашей информации я попытался передать List непосредственно в интерфейсе с аннотациями @Body. Также путем передачи RequestBody в методе интерфейса. –
user2382771