делать операции замены XML в приложениях логики - PullRequest
5 голосов

Как заменить строки в полезной нагрузке XML в логических приложениях?

вход

<root>
  <alexIsAwesome>yes he is</alexIsAwesome>
  <bytes>sdfsdfjijOIJOISJDFQPWORPJkjsdlfkjlksdf==</bytes>
  <bytes>SFSDFsdfsdgfjgjkfjsdlfkjlksdf==</bytes>
</root>

желаемый результат

<root>
  <alexIsAwesome>yes he is</alexIsAwesome>
  <bytes>replacetext1</bytes>
  <bytes>replacetext2</bytes>
</root>

Как перебирать XML и заменять текст внутри узлов? Помните, что размер входного узла может быть 100 МБ!

Ответы [ 2 ]

3 голосов
/ 27 мая 2019

Вы можете использовать учетную запись Integration с действием Transform XML, указав на определенную карту типа XSLT или Liquid. логика интеграции корпоративных приложений

3 голосов
/ 24 мая 2019

Если вы уже загружаете содержимое XML в приложение логики, вы можете просто использовать функцию replace.Обратите внимание, что существуют определенные ограничения , которые вы можете использовать при последовательных запусках.

Если у вас более сложные варианты использования, вы можете вместо этого попробовать один из следующих

Для полезных нагрузок до 50 МБ вы можете просто использовать новую функцию встроенного кода для выполнения необходимых преобразований.Сначала вам нужно будет преобразовать полезную нагрузку в JSON (используя json), а затем обратно в XML (используя xml).

Но для гораздо больших полезных нагрузок и / или более сложных преобразований было бы лучше перенести это в функцию, вызываемую из приложения логики .

Лучшийв данном случае подход заключается в хранении полезных данных в хранилище BLOB-объектов Azure, и ваша функция будет иметь привязку Blob Input и Blob Output привязки.

...