img标签图片未加载到chrome中

时间:2014-11-11 16:07:22

标签: java html eclipse jsp google-chrome

我一直致力于动态Web应用程序,需要在本地文件的jsp上显示图像。当我在eclipse中运行它时,程序运行得非常好,但是当我在chrome中尝试相同时它不会加载图像。

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Image Processor</title>
</head>
<body bgcolor="BLACK">
<h3 style="color : WHITE" align="Center">Process Your Image</h3>
<img src ="E:\Pics\Wallpapers\me.jpg" width=300 height=400>
<%
String name = request.getParameter( "path" );
session.setAttribute( "path", name );
%>
</body>
</html>

2 个答案:

答案 0 :(得分:2)

您需要了解网络的运作方式。

您有一位用户,例如在法国,使用他的浏览器访问http://foo.bar.com的网页。这会将HTTP请求发送到位于例如巴西的服务器foo.bar.com。服务器发回一个包含例如

的HTML页面
<img src="image.jpg" />

当它看到这个时,浏览器会向巴西的服务器发送另一个HTTP请求,要求http://foo.bar.com/image.jpg处的图像。

请注意,用户在浏览器中看到的所有内容都来自位于其他位置的Web服务器。巴西的一个网站无权在法国用户的机器上打开文件。这将构成一个主要的安全问题,因为该网站可以收集有关最终用户机器上文件的私人信息。

您可能会对以下事实感到困惑:在开发过程中,服务器和客户端计算机是相同的。但这并没有改变任何事情。应用程序网页上显示的所有内容都必须来自Web服务器,通过HTTP。您不能简单地将图像源设置为文件路径。图像的路径必须指向由您的Web服务器提供的图像,并部署在您的Web服务器中。

答案 1 :(得分:0)

您需要将图片放入应用中,以避免在不同位置执行图片时遇到问题:

<link rel="shortcut icon" href="<%=session.getAttribute("URL_HOST") %>/resources/your_image.jpg" />

设置会话属性检查this question