You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

通过Microsoft Graph API发送自适应卡片点击提交按钮报错如何解决

问题现象

通过如下JSON配置可成功发送带按钮和超链接的缩略卡片,但点击卡片按钮时触发报错:
报错截图

调用的API地址为:https://graph.microsoft.com/v1.0/chats/chatId/messages

提交的JSON请求体内容如下:

{
    "body": {
        "contentType": "html",
        "content": "<attachment id=\"74d20c7f34aa4a7fb74e2b30004247c5\"></attachment>"
    },
    "attachments": [
        {
            "id": "74d20c7f34aa4a7fb74e2b30004247c5",
            "contentType": "application/vnd.microsoft.card.thumbnail",
            "contentUrl": null,
            "content": "{\r\n  \"title\": \"This is an example of posting a card\",\r\n  \"subtitle\": \"<h3>This is the subtitle</h3>\",\r\n  \"text\": \"Here is some body text. <br>\\r\\nAnd a <a href=\\\"http://microsoft.com/\\\">hyperlink</a>. <br>\\r\\nAnd below that is some buttons:\",\r\n  \"buttons\": [\r\n    {\r\n      \"type\": \"messageBack\",\r\n      \"title\": \"Login to FakeBot\",\r\n      \"text\": \"login\",\r\n      \"displayText\": \"login\",\r\n      \"value\": \"login\"\r\n    }\r\n  ]\r\n}"
        }
    ]
}
排查与解决方案
  • 首先校验交互逻辑匹配性:你使用的messageBack类型按钮需要绑定对应Teams机器人接收点击回调,当前你仅通过Graph API发送卡片,没有将对应机器人添加到当前会话中,Teams无法找到回调接收方就会触发报错。
  • 按需调整按钮类型:如果仅需要点击按钮后发送固定文本到会话,不需要后端接收事件,可以将按钮类型修改为imBack,无需额外机器人配置即可正常工作;如果确实需要后端处理按钮点击事件,需要先在Azure平台注册Teams机器人,将机器人添加到目标会话后再发送卡片。
  • 检查权限配置:确认调用Graph API的令牌已开启ChatMessage.Send、TeamsAppInstallation.ReadWriteForChat等必要权限,保证应用有权限处理会话内的交互事件。
  • 验证卡片内容合规性:当前你提交的卡片JSON转义无异常,生产环境注意避免未转义的特殊字符导致卡片解析错误。

内容的提问来源于stack exchange,提问作者Vaibhav

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 03:27:01