如何在基于 Azure QnAMaker 的 Teams Chatbot 中显示来自 SharePoint 的私人图片?

How can I show a private picture from SharePoint in my Teams Chatbot based on Azure QnAMaker?

我正在尝试制作一个聊天机器人,它将使用 Azure QnA Maker/MS botframework 传送给 Teams。我想在我的一些问答中使用存储在 SharePoint 文件夹中的图片。

作为测试,我用同一张图片添加了两次问答:一次来自私人 SP,一次来自我使用的 internet.The 帐户,可以访问上述 SharePoint,我可以将两张图片都添加到qnamaker.ai 带有下方标记的门户。(它在门户本身的测试模式下也能正常工作)

SP\n\n![SP](**link of SP website**/Shared%20Documents/squirrel.jpg)\n\nInternet\n\n![pic1](https://images.unsplash.com/photo-1507666405895-422eee7d517f?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=1350&q=80)

我的 QnA Maker 目前被引导到 Teams,这就是问题所在;私人照片似乎无法访问。我正在从一个帐户访问 Teams,该帐户也作为对 SharePoint 的访问权限。 QnAMakerTeamsIssue

如何让我的 Teams 应用程序读取私人 SharePoint 图像?

我很确定 Teams 实际上将图像缓存在它自己的 CDN 中,所以它需要“pre-fetch”它们,可以这么说。因此,它需要 public 匿名访问内容。默认情况下,SharePoint 无法做到这一点,因此您需要:

  1. 将内容放在其他地方
  2. 我还没有对此进行测试,但可以利用 SharePoint 的 CDN 功能。它需要管理员控制,但也许有一个 one-off 位置可以用于此目的。查看更多 here

更新:我做了更多研究,但不幸的是 SharePoint CDN 不能用于此,因为它被配置为只接受来自 SharePoint 页面本身的请求(即内容不能 使用 在 SharePoint 之外)。我创建了一个uservoice request for this,以防其他人想要up-vote它。