Power Automate发送Teams自适应卡片遇JSON解析错误求助
解决Power Automate发送Teams自适应卡片的JSON解析错误
问题根源
你的text字段包含未正确转义的双引号,直接将其插入自适应卡片的JSON载荷时,会破坏整个JSON的语法结构,导致Newtonsoft.Json解析失败。
解决方案
通过Power Automate的replace函数,将text字段中的双引号替换为JSON兼容的转义双引号(即两个连续双引号),修改自适应卡片的表达式:
- 将原表达式
@{body('Parse_JSON')?['text']}替换为@{replace(body('Parse_JSON')?['text'], '"', '""')}
修改后的完整载荷
{"$schema":"http://adaptivecards.io/schemas/adaptive-card.json","type":"AdaptiveCard","version":"1.5","body":[{"type":"TextBlock","text":"@{body('Parse_JSON')?['title']}","size":"Large","weight":"Bolder","wrap":true},{"type":"TextBlock","text":"@{replace(body('Parse_JSON')?['text'], '"', '""')}","isSubtle":"true","wrap":true}]}
额外说明
- 确保原始输入的JSON数据本身是合法格式(比如示例中
"text": "\"reason\":\""是不完整的,正确的应该是类似"text": "\"reason\":\"test\""的完整结构) - 该方法会自动处理所有包含双引号的文本,避免破坏自适应卡片的JSON结构
内容的提问来源于stack exchange,提问作者Elvin Jafarov
相关产品推荐
相关产品推荐

