Я пытаюсь получить доступ к веб-сервису открытых данных, который дает мне информацию о трафике. Документация говорит, что запросы должны быть GET
и должны содержать Accept: application/json
и Content-Type: application/json
. Я не понимаю, зачем им нужен Content-Type
, но нормально:
Я попытался получить данные только с заголовком Accept:
, но я всегда получаю 415 Unsupported Media Type
. Теперь я в настоящее время пытаюсь это сделать (но я не уверен, правильно ли настроил оба заголовка):
String entity = ClientBuilder.newClient().target(liveDataURI)
.path(liveDataPath)
.request(MediaType.APPLICATION_JSON)
.accept(MediaType.APPLICATION_JSON)
.get(String.class);
Как вы видите, я использую Jersey 2.2, и я все еще получаю 415 Unsupported Media Type
.
ИЗМЕНИТЬ
Итак, я получил его на работу, но я не понимаю, почему. Разве не accept(MediaType.APPLICATION_JSON)
и header("Content-type","application/json")
то же самое?
String responseEntity = ClientBuilder.newClient()
.target(liveDataURI)
.path(liveDataPath)
.request(MediaType.APPLICATION_JSON)
.header("Content-type", "application/json")
.get(String.class);