场景如下:我在 LAN 网络上有两台机器。其中之一充当网络服务器。当第二个客户端机器浏览器(Firefox)从服务器发出请求时,它发送以下 html
<!DOCTYPE HTML>
<html>
<body>
<img src="C:\Users\General\Desktop\map1.jpg" align="middle">
</body>
</html>
但是图像不显示。我尝试了 img 标签的以下变体:
<img src="C:/Users/General/Desktop/map1.jpg" align="middle">
<img src="file:///C:/Users/General/Desktop/map1.jpg" align="middle">
<img src="http://localhost//file:/C:/Users/General/Desktop/map1.jpg" align="middle">
有趣的是,如果我查看页面源并将 html 内容保存到本地文件并在浏览器中打开它,它就可以工作。完全相同的 html 代码在从服务器获取时不起作用,但在本地计算机上打开时起作用。
请注意,我正在尝试从客户端计算机加载图像,因为在我的场景中不可能将图像存储在服务器计算机上。 (服务器实际上是没有SD卡的Arduino Mega)
原文由 PrashanD 发布,翻译遵循 CC BY-SA 4.0 许可协议
在大多数最新的浏览器中,出于安全目的,本地文件的链接 (
file:///
) 不会打开。在您的情况下,浏览器不会显示驻留在硬盘文件中的图像。这个原因也解释了为什么在本地保存页面时它会起作用。