Chrome中MS-Teams Bot嵌入超链接与图片放大功能无法打开问题咨询
MS Teams HR FAQ Bot 异常问题修复方案
需求背景:基于C# + ASP.NET Core + Bot Framework SDK开发的MS Teams HR FAQ Bot,将QnA Maker返回的FAQ内容作为附件嵌入v1.2版本Adaptive Card卡片体,调用send activity接口发送给用户。典型场景为用户咨询薪资相关问题时,返回嵌入加粗/斜体格式文档链接的响应内容。
异常触发条件
所有异常均在Chrome最新版本更新后出现,近两周Bot无代码变更:
- 普通格式超链接在MS Teams客户端、各浏览器打开的Teams Web端均可正常跳转
- 嵌入在加粗/斜体格式内的超链接,仅在Chrome浏览器打开的Teams Web端无法正常跳转
- 同时存在Chrome浏览器下Teams Web端图片放大功能异常问题
兼容性表现
- Firefox浏览器打开的Teams Web端所有功能正常
- MS Teams桌面客户端所有功能正常
临时快速修复方案
1. 富文本链接格式修复
对QnA Maker返回的Markdown内容做预处理,调整嵌套格式的书写顺序:
原错误写法(易触发Chrome兼容问题):*[链接文本](链接地址)*
调整后兼容写法:[*链接文本*](链接地址)
即将格式标签从包裹整个链接,调整为仅包裹链接内的文本内容,预处理代码示例(C#):
using System.Text.RegularExpressions; // 处理QnA返回的Markdown内容 public string ProcessQnAMarkdown(string originalContent) { // 替换斜体包裹链接的格式 var processedContent = Regex.Replace(originalContent, @"\*\[([^\]]+)\]\(([^)]+)\)\*", @"[*$1*]($2)"); // 替换加粗包裹链接的格式 processedContent = Regex.Replace(processedContent, @"\*\*\[([^\]]+)\]\(([^)]+)\)\*\*", @"[**$1**]($2)"); return processedContent; }
2. 图片放大异常临时修复
对Adaptive Card内的Image组件做调整:
- 移除
selectAction配置的Action.OpenUrl跳转逻辑(若无需跳转) - 新增
width、height属性指定固定渲染尺寸,避免自适应缩放触发Chrome渲染bug - 如需保留放大功能,可改为点击图片后弹出独立的图片查看对话框实现,不要依赖Teams原生的图片放大能力
3. 兜底兼容方案
如果紧急上线需求无法等待官方修复,可临时将Adaptive Card的Markdown渲染模式关闭,直接将富文本内容转为HTML格式嵌入Adaptive Card的RichTextBlock组件,规避Markdown解析的兼容问题。
内容的提问来源于stack exchange,提问作者Rajeesh Menoth
相关产品推荐
相关产品推荐

