Articles of retrofit

JSON Parsing with Retrofit

Недавно я начал использовать Retrofit. Я мало знаю об этом. Я столкнулся с этой проблемой, и ни одна из ответов не отвечала моей проблеме. Это ответ JSON { "results": [ { "description_eng": "This is second time testing", "img_url": "-", "title_eng": "Second test" }, { "description_eng": "Hello 1 2 3, I am testing.", "img_url": "https://fbcdn-sphotos-fa.akamaihd.net/hphotos-ak-xpa1/t31.0-8/s720x720/10838273_816509855058935_6428556113200361121_o.jpg", "title_eng": […]

Android / RxJava Как связать сетевые запросы и повторить попытку

Я пытаюсь связать сетевые запросы с помощью RxJava в Android, а затем повторить попытку, когда он не работает. Я смотрел StackOverflow на то, как это сделать, не попадая в адский черт Callback, который поставляется с использованием Vanilla Android и Retrofit в одиночку. Я могу сделать все это в процедуре, в такой асинхронной задаче (ниже шаги, […]

Выполнение последовательных вызовов api с помощью Дооснащения и возвращение наблюдаемых

У меня есть служба переоснащения, которая содержит следующий интерфейс public interface ApiService { @GET("/users/me") Observable<Account> authenticateUser(@Header("Authorization") String auth); @GET("/membership/{userId}") SubscriptionStatus getSubscriptionStatus(@Path("userId") String userId); } Я хотел бы определить метод, чтобы сделать api-вызов, чтобы получить Учетную запись, которая содержит userId, а затем использовать этот идентификатор, чтобы сделать второй вызов API, чтобы получить статус подписки на пользователей. […]

Неоднократно совершать вызов API с помощью дооснащения и rxjava

У меня есть дооснащение: @GET("something/") Observable<Something> getSomething(); Подписка на него дает ответ. getSomething().subscribe(new Subscriber<Something>() { @Override public void onCompleted() { } @Override public void onError(Throwable e) { } @Override public void onNext(Something something) { //update database of something } }); Как я могу сделать этот вызов каждые 60 секунд, чтобы я мог обновить базу данных […]

Использование Retrofit для доступа к API с ключом / идентификатором

Я действительно не нашел четкой документации по этому вопросу, но мне было интересно, может ли кто-нибудь указать мне на что-то на использование Retrofit (или OKHTTP или что-то, если это более подходит), чтобы вытащить поток JSON из API, для которого требуется API ID и ключ API (пример доступа к данным с терминала: curl -v -H "app_id: […]

Есть ли у нас возможность прекратить запрос в OkHttp Interceptor?

В нашем приложении мы встретились с одним специальным случаем – если наш App.specialFlag == true , нам нужно остановить любой запрос из нашего кода. И мы думаем, что наилучшим подходом в этой ситуации является специальный Interceptor который остановит любые наши запросы, примерно так: if (App.specialFlag) { // Somehow stop request } else { return chain.proceed(chain.request()); […]

NetworkOnMainThreadException с модификацией-бета2 и rxjava

Недавно я обновился от retroft-beta1, и это работало. У меня есть следующий интерфейс для API: public interface Service { @POST("path") Observable<Object> service(); } И следующий вызов: service.service() .observeOn(AndroidSchedulers.mainThread()) .subscribe(); И он выдает исключение NetworkOnMainThreadException. Но это работало в retrofit-beta1.

Обновите URL-адрес POST с параметрами

У меня есть определенный веб-сервис, который имеет следующий URL-адрес POST: (host)/pois/category?lat=…&long=… Где категория может быть тремя вещами (скажем, «cat1», «cat2» или «cat3»), а lat и long – удваиваются с географической привязкой пользователя. Поскольку URL-адрес определен как аннотация, например @POST("/pois/") Как добавить или установить эти параметры в свой URL?

Альтернатива RxJava для оператора map () для сохранения испускаемых элементов

Я использую Retrofit для взаимодействия с REST API, а RxJava манипулирует данными, которые я получаю. В нижеприведенном фрагменте кода я вызываю вызов API и использую оператор map для сохранения полученных данных, прежде чем переходить к другим операциям с потоком. retrofitApi.registerDevice(mDevice) .map(new Func1<Device, Device>() { @Override public Device call(Device device) { // The only purpose of […]

Переопределить 2 проверить URL-адрес вызова

Есть ли возможность сравнить URL-адрес Call с помощью String в Retrofit 2 ? Например, мы можем взять этот baseUrl : https://www.google.com И этот Call : public interface ExampleService { @GET("dummy/{examplePartialUrl}/") Call<JsonObject> exampleList(@Path("examplePartialUrl") String examplePartialUrl; } С этим запросом: Call<JsonObject> mCall = dummyService.exampleList("partialDummy") Есть способ получить https://www.google.com/dummy/partialDummy а также dummy/partialDummy прежде чем получить ответ от звонка?