解决Chrome浏览器Not allowed to load local resource

Chorme浏览器Not allowed to load local resource的解决方法

      • 1.问题描述
      • 2.解决方法

1.问题描述

Chrome浏览器出于安全方面的考虑,禁止网页访问本地文件。举个例子:Chrome浏览器上有一个可以修改网页css风格的插件,名为Stylus。通过Stylus可以将个别网页的css风格修改成自己喜欢的样子,例如给百度云添加背景图片(这里我用的是神代綺凜的百度系列萌化样式):
为网页更改背景图片
如果想要更改成自己喜欢的图片,通过更改Stylus样式表中的相关内容:
修改样式表
Chrome浏览器会报错Not allowed to load local resource,且无法加载图片:
无法加载图片
报错Not allowed to load local resource

2.解决方法

网上有许多方法,例如关闭Chrome浏览器的这个功能,或是建立虚拟目录等,我使用的方法是搭建本地服务器,Chrome浏览器上通过http://127.0.0.1:port/来访问本地文件。
①安装Node.js
Node.js下载地址:http://nodejs.cn/download/
安装过程参考菜鸟教程
②安装Node.js中的Express框架
打开cmd,进入到服务器文件所在目录(我的目录是E:/xiaoyaosheny/html/localserver/),运行命令npm install express,等待安装完成。安装完成后该目录下会出现一个文件夹node_modules和一个文件package-lock.json
③编写服务器文件(我的文件名为server.js

1
2
3
4
5
6
7
//加载express模块
var express = require('express');
var app = express();

app.use('/public', express.static('public'));

var server = app.listen(8081);

④在刚才打开的cmd中运行命令node server.js,如果没有报错,则Chrome浏览器上就可以通过http://127.0.0.1:8081/public/baidunetdisk.jpg就可以访问本地文件了
指定链接
成功( ?? ω ?? )y

注意:需要将相应的文件放在指定文件夹中,以我的文件为例,服务器文件server.jsE:/xiaoyaosheny/html/localserver下,该文件夹中包含public文件夹,用于存放需要访问的文件。在Chrome浏览器上应该通过链接http://127.0.0.1:port/public/文件名访问文件,其中的portapp.listen()中的参数(我这里是8081)
最后,可以写段程序使server.js开机自启