HTML访问不到绝对路径下的图片怎么办?


       有时候我们使用 img 标签下的src属性访问图片的时候,会想把图片放到D盘或者E盘的某个路径。但是结果却是访问不到。一开F12调试却看到了绝对路径前面多了 file:///。就是下图这个样子。但是当我们用浏览器访问却可以访问得到。这怎么解决呢?

       其实只要把目录拦截住然后映射到D盘或者E盘就好了。如果是Linux就放到data下…

       注意:本地目录下的文件夹不要和static目录下的文件夹同名!

       注意:如果项目中的其他某个地方已经有了addResourceHandlers的话,就写到一起去,不要分开来写。否则的话就会有其中一个失效。

配置如下

class WebConfigurer extends WebMvcConfigurationSupport {

	//默认Linux
	String uploadPath = "data/";

	/**
	 * 判断是不是windows
	 * @param registry
	 */
	@Override
	public void addResourceHandlers(ResourceHandlerRegistry registry) {
		if (System.getProperty("os.name").toLowerCase().startsWith("windows")){
			//如果是windows,就弄成windows的路径
			uploadPath = "D:/imgPic/";
		}
		//最后把img下的目录映射到指点路径下
		registry.addResourceHandler("/imgPic/**").addResourceLocations("file:///"+uploadPath);
		registry.addResourceHandler("/**").addResourceLocations("classpath:/static/");
	}
}

更多推荐

HTML img 中的 src 访问不到绝对路径下的图片怎么办?