2015-04-30 4 views
2

У нас есть несколько приложений Spring Boot, работающих под микросервисами. Каждый из них работает с пружинным приводом, чтобы мы могли контролировать/метрику,/env,/health и т. Д. На одной из этих служб конечная точка/env возвращает данные в формате XML при запросе в браузере. Кроме того, XML недействителен, но мне очень важно, чтобы конечная точка возвращала данные в json. Причина, по которой XML является недопустимой, заключается в том, что мы используем Spring Cloud Config, а первый элемент содержит URL-адрес GitHub, который делает его недействительным.Spring Boot Actuator/env конечная точка возвращает данные как XML - почему?

<LinkedHashMap xmlns=""><profiles>development</profiles><configService:https://github.com/ourcompany/configs/usage.yml> 

Я не могу найти ничего другого в этом проекте, который позволил бы вернуть данные в json.

Если я использую cURL и передаю заголовок Accept со значением = application/json, служба правильно вернет json, но почему браузер возвращает XML? То, что я также заметил с помощью этой службы, заключается в том, что я могу передать Accept = application/xml и вернуть его для возврата XML, но мои другие службы возвращают 406 недопустимый ответ при запросе XML. Странный.

Мы используем родительскую версию parent-boot-starter-1.2.2.RELEASE, а также использование Spring-cloud-starter 1.0.0.RELEASE.

+0

Заметил, что после запроса, что если я попрошу /env.json, я могу получить данные в json, так что это, скорее всего, решит проблему, но по-прежнему возникает вопрос, почему эта служба разрешает возврат XML, но другие возвращают 406? – Jay

+3

Если у вас есть 'jackson-dataformat-xml' в зависимостях? Если он доступен, 'XmlMapper' будет автоконфигурирован. Или аннотация '@ XmlRootElement' на возвращаемом объекте, и в этом случае JAXB может использоваться. –

ответ

3

Комментарий ci_ выше - это то, что происходит. Наличие XmlMapper заставил конечные точки исполнительного механизма вернуть XML. Нажатие на конечную точку /env.json решит проблему для меня.

Смежные вопросы