自适应卡片未在 Web 应用程序中显示图像



我正在使用dotNet sdk。所有图像都存储在wwwroot/图像文件夹中,即静态文件夹。 当我通过模拟器运行机器人时,即在本地它显示图像。 但是在发布应用程序后,图像没有显示。 当我远程调试程序时,我得到了正确的图像路径:D:\home\site\wwwroot\wwwroot\Image\pdf.jpg ,这是当前网址,但门槛图像未显示。

new AdaptiveColumn() {
Width=AdaptiveColumnWidth.Auto,
Items = new List<AdaptiveElement>()
{
new AdaptiveImage()
{
//Url = new Uri(iconUrl),
Size = AdaptiveImageSize.Small,
Style = AdaptiveImageStyle.Default,
UrlString=iconUrl
}
}
},

任何以驱动器号(如 D(开头的位置都是本地路径,而不是远程 URL。尝试标识服务器上的资源时,切勿使用本地路径,因为机器人正在与完全不同的计算机上的客户端通信。

请熟悉本文档以了解静态文件在 .NET Core 中的工作原理:https://learn.microsoft.com/en-us/aspnet/core/fundamentals/static-files

Web 应用在服务器上运行后,你将能够使用 HTTP/S 访问映像。如果在本地运行机器人,则 URL 应类似于 http://localhost:3978/Image/pdf.jpg,如果部署了机器人,则它应类似于 https://rajatbot.azurewebsites.com/Image/pdf.jpg。通过将 URL 粘贴到浏览器中来测试它以确保它正常工作,然后将 URL 放入您的卡片中。

最新更新