Почему политика xml-to-json приводит к пустому телу при использовании его во входящих политиках? - PullRequest
0 голосов
/ 22 мая 2019

Ссылка на документ: https://docs.microsoft.com/en-us/azure/api-management/api-management-transformation-policies#example-1

Фрагмент из моих политик "входящей обработки":

<inbound>
   <base />
   <xml-to-json kind="direct" apply="always" consider-accept-header="false" />
</inbound>

Проблема: Когда я применяю эту политику во «входящей обработке», вызываемому API-интерфейсу (Logic App) дается пустое тело. API, получающий этот запрос, показывает Content-Length = 0.

Результаты трассировки:

xml-to-json (0.697 ms)
"XML-to-JSON policy was applied. Original Content-Length header was removed as its value was invalidated. Content-Type header was set to 'application/json'."

Примечания: Когда я применяю эту же политику в политиках «исходящей обработки», я получаю ожидаемый результат как JSON.

Базовый пример XML, который я отправляю:

<note>
    <to>PersonOne</to>
    <from>PersonTwo</from>
    <heading>Test</heading>
    <body>Example</body>
</note>

Результат, который я получаю при применении политики в разделе «Исходящие политики» (это работает как положено):

{
    "note": {
        "to": "PersonOne",
        "from": "PersonTwo",
        "heading": "Test",
        "body": "Example"
    }
}
...