Language agnostic 服务器计算机上的服务器对数据的访问

Language agnostic 服务器计算机上的服务器对数据的访问,language-agnostic,Language Agnostic,我的问题是,我知道服务器应用程序可以访问存储在服务器上的数据,但不能访问存储在客户端计算机上的数据,因为这是一个安全问题,浏览器不允许这样做。但是如果是localHost(当我的本地pc充当服务器时),我应该能够从我的pc(运行应用程序的本地pc)访问文件。但事实并非如此。 为什么我无法通过本地主机访问本地C:\drive中的简单映像文件。我使用的URL是file:///c:/image.png 但如果我把这个图像存储在tomcat主目录下的任何地方,我都可以访问它。为什么? 我将其用作此部分的

我的问题是,我知道服务器应用程序可以访问存储在服务器上的数据,但不能访问存储在客户端计算机上的数据,因为这是一个安全问题,浏览器不允许这样做。但是如果是localHost(当我的本地pc充当服务器时),我应该能够从我的pc(运行应用程序的本地pc)访问文件。但事实并非如此。 为什么我无法通过本地主机访问本地C:\drive中的简单映像文件。我使用的URL是file:///c:/image.png 但如果我把这个图像存储在tomcat主目录下的任何地方,我都可以访问它。为什么?
我将其用作此部分的问题:

我使用的URL是file:///c:/image.png 但如果我储存了这张照片 在tomcat的主目录下,我可以访问它

如果您想在将文件放入Tomcat的文档根目录后通过Tomcat访问该文件,那么要使用的URL(假设您没有更改默认端口设置)是:

http://localhost:8080/image.png

web服务器承载的内容需要通过web服务器访问。
文件://
URL绕过任何类型的服务器,基本上引导浏览器直接查看本地文件系统。因此,如果您要执行以下操作,它也应该起作用:

file:///C:/path/to/tomcat/home/image.png

但在这种情况下,你不会通过Tomcat。您只是将浏览器指向本地文件系统中的tomcat文件夹


编辑:我不认为很多浏览器不允许托管文档中的标签中包含
file://
URL。这样做可能会导致出现一个安全漏洞,就好像你可以猜到某人本地文件系统上的图像文件名一样,然后你可以发布一个网页,让它看起来好像你的服务器以某种方式抓取了他们的个人图像文件

非常感谢您的回答,但我的问题是,如果文件在本地文件系统中,而不是在tomcat目录中,为什么我不能使用file:///c:/image.png 正如你所说的,这应该结束file:///C:/path/to/tomcat/home/image.png 所以这也应该起作用file:///c:/image.png 但它不是!!!好的,我修改了我的答案。问题是您正在将
文件://
url放入
img
标记中。我不希望这样。非常感谢你的回答/观点。我很感激。你用的是什么浏览器?有些人有安全限制,不允许这样做。看见