Как установить формат ответа на сервис REST в BW6

Я новичок в BW6 (v.6.3.1), и я играю с его функциями REST. В настоящее время я создаю очень простой эхо-сервис, чтобы выяснить, как он обрабатывает параметры и т. Д. Одна из вещей, которые я заметил, - это то, что я могу указать несколько форматов клиента ответа, а именно XML и JSON. Но я не могу найти, как я могу указать, какой вывод использовать в реальном ответе.

В настоящее время я установил следующий путь службы ресурсов:

/echo/{param}.{format}

Я хочу использовать параметр формата для управления выводом, который я получу. Так

/echo/printme.xml

приведет к

<messageBody>printme</messageBody> (or something to that extent)

А также

/echo/printme.json

приведет к

printme

Я попробовал несколько подходов, разделив поток на основе содержимого "формата", но безрезультатно. Если я проверил JSON в качестве формата ответа клиента, он ответит JSON. Только если XML является единственным проверенным форматом клиента ответа, ответ будет выводить XML. BW прозрачно обрабатывает рендеринг JSON или XML.

Итак, как я могу сказать BW выводить в формате XML или JSON, когда оба они выбраны в качестве формата ответа клиента?

Изменить: используя пользовательский интерфейс Swagger я понял, как я могу управлять этим поведением. Указав следующий заголовок:

curl -X GET --header "Accept: application/xml" "http://localhost:8080/echo"

1 ответ

Согласно документации

Выберите Invoke REST API Вы можете выбрать тип (запрос или ответ), как показано ниже:

введите описание изображения здесь

Если вы щелкните по нему, есть три варианта JSON, XML и Custom. Если вы хотите выбрать не JSON и XML, а затем выберите Custom.

Custom (For RequestType): Custom: чтобы переопределить значение Content-Type на вкладке Input, выберите CUSTOM и укажите значение на вкладке Input.

Custom (For ResponseType): чтобы переопределить значение заголовка Accept на вкладке Input, выберите CUSTOM и укажите значение на вкладке Input.

Ниже находится вкладка "Вход", где вы можете переопределить, когда для типа установлено значение "Пользовательский":

введите описание изображения здесь

Другие вопросы по тегам