Я хочу отправить JSON в Azure ServiceBus из приложения логики, но у меня возникают проблемы с правильным форматированием (я думаю). Приложение логики получает информацию из элемента списка SharePoint Online, поэтому я могу получить к нему доступ в приложении логики как к динамическому контенту. Предположим, что для этого поста шаблон JSON выглядит так:
{ Title: '', CreatedBy:'' }
Теперь в конструкторе приложений логики я установил для типа содержимого значение «text / plain», чтобы обеспечить обработку кодировки (как описано в здесь), а затем добавил шаблон выше в поле« Содержание ». Это выглядит так в конструкторе приложений логики (представление кода), чего я и ожидал:
"ContentData": "@{base64('{ Title: '', CreatedBy:'' }')}"
Если я вернусь к дизайнеру и между одинарными кавычками для «Заголовка» добавлю поле из своего динамического содержимого, дизайнер (представление кода) будет выглядеть так:
"ContentData": "@{base64(concat('{ Title: '',triggerBody()?['Title'],'', CreatedBy:'' }'))}"
При попытке сохранить выдает следующую ошибку:
Не удалось сохранить приложение логики MyLogicApp. Ошибка проверки шаблона: 'Действие шаблона' Send_message 'в строке' 1 'и столбце' 163728 'недопустимо: "Не удалось проанализировать выражение языка шаблона' base64 (concat ('{Title:' ', triggerBody ()? [ 'Title'], '', CreatedBy: ''} '))': ожидаемый токен 'RightParenthesis' и фактический 'Identifier'. ". '.
Мне кажется, что ошибка подсказывает мне проблему, но я не могу ее понять. Может кто-нибудь помочь мне с правильным форматированием, пожалуйста?
Из статьи, на которую я ссылался выше, я тоже пробовал это, но получил ту же ошибку:
"ContentData": "@{base64(concat('{ Title: '', string(triggerBody()?['Title']),'', CreatedBy:'' }'))}"
Изменить: я забыл добавить, что нашел эта статья, в которой рекомендуется добавить decodeBase64 при работе с JSON и приложениями логики. Не уверен, что это актуально, поскольку я не разбираюсь с ServiceBus.