![](/img/trans.png)
[英]Merging 1 or more ODATA responses into 1 JSON message in Azure Logic Apps
[英]Azure Logic Apps send JSON Message to ServiceBus
我想從Logic App將JSON發送到Azure ServiceBus,但是我在為正確的格式而苦苦掙扎(我認為)。 Logic App從SharePoint Online列表項獲取信息,因此我可以在Logic App中將其作為動態內容進行訪問。 對於本文,假設JSON模板如下所示:
{ Title: '', CreatedBy:'' }
現在在邏輯應用設計師,我將內容類型設置為“文本/純”,以確保編碼的處理(如所描述的在這里 )中,然后加入到上面的“內容”字段中的模板。 在Logic App設計器(代碼視圖)中看起來像這樣,這是我期望的:
"ContentData": "@{base64('{ Title: '', CreatedBy:'' }')}"
如果回到設計器,然后在“標題”的單引號之間,添加動態內容中的字段,則設計器(代碼視圖)如下所示:
"ContentData": "@{base64(concat('{ Title: '',triggerBody()?['Title'],'', CreatedBy:'' }'))}"
當我嘗試保存時,出現以下錯誤:
保存邏輯應用程序MyLogicApp失敗。 模板驗證失敗:“在行'1'和列'163728'處的模板動作'Send_message'無效:“無法解析模板語言表達式'base64(concat('{Title:'',triggerBody()?? 'Title'],'',CreatedBy:''}'))':預期令牌'RightParenthesis'和實際的'Identifier'。“。'。
我覺得該錯誤告訴我問題所在,但我無法完全解決。 有人可以幫我正確的格式嗎?
從我上面鏈接的文章中,我也嘗試了此操作,但遇到了相同的錯誤:
"ContentData": "@{base64(concat('{ Title: '', string(triggerBody()?['Title']),'', CreatedBy:'' }'))}"
編輯:我忘了補充,我發現這篇文章建議在使用JSON和Logic Apps時添加解碼基數64。 不過不確定,因為我不是從ServiceBus解析它是否相關。
設法通過一些反復試驗找到了解決方案。 如果我的狡猾格式錯誤,那么請更新我的解決方法,以希望其他人覺得這有用。
邏輯應用程序代碼視圖應如下所示:
"ContentData": "@{base64('{ Title: {triggers().outputs.body.Title}, CreatedBy: {triggers().outputs.body.CreatedBy} }')}"
Logic App設計器視圖的Content字段應如下所示:
{ Title: {triggers().outputs.body.Title}, CreatedBy: {triggers().outputs.body.CreatedBy} }
我很想發布一些引用或支持的文章,但到目前為止我還沒有找到任何文章-如果有人有任何有用的資源通過Logic Apps向Service Bus發送消息以將其添加到這篇文章中,我們將不勝感激。 謝謝!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.