首页 > 解决方案 > 不允许加载本地资源:从文件服务器加载图像时

问题描述

我有一个应用程序(角度)和 API(.net 核心),我在数据服务器上有一个包含 20k 图像的共享文件夹。我想将图像显示为搜索结果的一部分。听起来很简单,不幸的是我无法做到这一点,因为 Chrome 中存在一些安全问题。这是内部申请。

所以我的观点是:

<div *ngFor="let drawing of drawings">
    <img [src]="getPhotoURL(drawing.fileUrl)" height="300">
</div>

示例图像路径如下所示:

\\data-3\eng$\ItemsDrawings\RZ10006.jpg

并在视图后端 - DomSanitizer 绕过安全性:

getPhotoURL(url: string) {
   return this.sanitizer.bypassSecurityTrustResourceUrl(url);
}

所以我得到的错误:

不允许加载本地资源:file://data-3/eng$/ItemsDrawings\RZ10006.jpg

我发现这与Chrome不允许访问本地文件有关,这可以理解,但这实际上是一个数据服务器。我已经看到很多解决方法如何在 Chrome 中绕过它,但我不会为每个用户对 Chrome 进行更改。

我知道我可以将图像加载到 API,然后将其传递到前端,但只是想知道这是否是这里唯一的选择?

任何人都可以对这个主题有所了解吗?

如果需要进行任何配置,我可以完全访问数据服务器。

标签: c#asp.netangularasp.net-corefileserver

解决方案


推荐阅读