Установите заголовки, используя пружинный андроид resttemplate и андроидные аннотации

В настоящее время я играю с Spring Android Resttemplate для взаимодействия с API REST, поддерживаемым java. На самом деле, я использую андроиды андроида, чтобы отправить http-звонки на этот серверный сервис, и я должен сказать, что это скалы. В основном аннотации Android позволяют вам определить интерфейс для вызовов службы и методы http, которые будут использоваться для каждого доступного вызова api: он будет генерировать весь код котельной плиты, относящийся к низкоуровневому материалу, например, маршаллинг / unmarshalling, вызывая право Http в соответствии с определением интерфейса.

Теперь я хотел бы задать некоторые заголовки для http-запросов: как я могу достичь этого, зная, что у меня есть только ссылка на интерфейс службы, определяющий все вызовы? Я также могу ссылаться на объект RestTemplate, но кажется, что теперь есть способ настройки заголовков.

Любая помощь будет действительно оценена благодаря

Я обратился к нему, создав экземпляр ApiClient в классе приложения и установив пользовательский шаблон REST.

В моем случае я использовал Jackson для преобразования сообщений JSON:

 RestTemplate restTemplate = new RestTemplate(fac); MappingJacksonHttpMessageConverter converter = new MappingJacksonHttpMessageConverter(); converter.getObjectMapper().configure(Feature.UNWRAP_ROOT_VALUE, true); restTemplate .getMessageConverters() .add(converter); mClient.setRestTemplate(restTemplate); 

Мой запрос фабричный fac выглядит следующим образом:

 ClientHttpRequestFactory fac = new HttpComponentsClientHttpRequestFactory() { @Override protected HttpUriRequest createHttpRequest(HttpMethod httpMethod, URI uri) { HttpUriRequest uriRequest = super.createHttpRequest(httpMethod, uri); // Add request headers uriRequest.addHeader( "Content-Type", MediaType.APPLICATION_JSON_VALUE); return uriRequest; } @Override public ClientHttpRequest createRequest(URI uri, HttpMethod httpMethod) throws IOException { if (Config.DEBUG_REQUESTS) { Log.d(TAG, uri); } return super.createRequest(uri, httpMethod); } }; 

ПРЕДУПРЕЖДЕНИЕ

Хотя это работает на всех устройствах Android в нашем офисе, я недавно обнаружил, что заголовки, похоже, не добавляются со всеми устройствами! Я не уверен, почему это (или какие именно устройства), но я ищу его и попытаюсь обновить этот ответ, когда найду разрешение.

Intereting Posts
Android – notifyDataSetChanged () не работает Конверсия в формат Dalvik завершилась с ошибкой 1 с помощью javax / net / SocketFactory.class Размеры экрана заставки для Android для всех устройств Есть ли способ обновить несколько TextView с помощью ArrayAdapter? Откройте приложение Instagram из другого приложения для Android и отправьте изображение с надписью Opengl прозрачный фон и просмотр камеры не любят текстурирование ScrollView setOverScrollMode в API <9 Android Volley – как изолировать запросы в другом классе XML-атрибут пароля для Android – устарел Поддерживается ли Intent.ACTION_CALL в Google Glass GDK? Com.android.ide.common.internal.LoggedErrorException с помощью Facebook SDK BindingAdapter пользовательский getter 2-сторонняя привязка данных Как поддерживать ссылки Amazon и Android Market (Google Play) в том же APK Android Network Service Discovery «Тайм-аут»? Как сохранить растровое изображение, которое я получил с камеры, на SD-карту, не теряя при этом оригинальный размер и качество