如何让Teams机器人卡片中Action.Submit类型的signin操作触发弹窗
触发失败的核心原因及修复方案
- 自适应卡片版本不兼容:Microsoft Teams 支持
signin操作的最低自适应卡片版本为 1.2,你当前配置的1.0版本不具备对应的能力,是无法触发登录弹窗的核心原因。 - 域名未加入应用白名单:你使用的登录跳转域名需要提前添加到Teams应用清单的
validDomains配置项中,未在白名单内的域名会被Teams安全策略直接拦截,不会触发弹窗。 - 配置写法可优化:你当前使用的
Action.Submit嵌套msteams对象的写法属于旧版兼容写法,更稳妥的方案是直接使用Action.OpenUrl配置登录跳转地址,跨Teams客户端的兼容性更高。
修正后的参考配置如下:
{ "$schema": "http://adaptivecards.io/schemas/adaptive-card.json", "type": "AdaptiveCard", "version": "1.2", "body": [ { "type": "TextBlock", "spacing": "none", "text": "点击下方完成身份验证", "isSubtle": false, "wrap": true } ], "actions": [ { "type": "Action.OpenUrl", "title": "点击登录", "url": "https://你自己的登录服务域名对应的地址" } ] }
补充说明:如果你需要保留
Action.Submit的写法,除了升级卡片版本、添加域名白名单之外,还要确保你的后端服务可以正常处理该提交动作返回的invoke响应,否则也会出现点击无响应的情况。
内容的提问来源于stack exchange,提问作者J. Michael Probert
相关产品推荐
相关产品推荐

