html js加载本地文件报错处理,跨域问题

这个问题是怎么来的?我写了一个本地html文件,里面通过three.js加载并显示一个本地三维模型,结果报错了。

报错如下:

Access to XMLHttpRequest at 'file:///C:/model/quater.mtl' from origin 'null' has been blocked by CORS policy: Cross origin requests are only supported for protocol schemes: http, data, isolated-app, chrome-extension, chrome, https, chrome-untrusted.

没玩过前端,看到这个错误不知道从何下手,查了半天了解到大体意思就是:

浏览器html加载本地资源文件,会被阻止。解决方法是搭建一个本地服务器,然后从这个服务器访问这个html文件,这样html和其他资源文件,会被浏览器判定为同一个域。

从这里找到一个解决方法:

Three.js教程

首先下载node.js的windows安装包,安装完以后,打开命令行,查询两个版本号,如果没有报错,就说明node.js和npm都安装好了。

然后继续执行命令:npm install -g live-server来安装一个名字叫live-server的软件,并等待它安装完成。

然后cd命令进入html所在的文件夹,并执行live-server命令

他会自动打开浏览器,并浏览到这个文件夹:

然后打开我们的html文件就可以了,这时html中的js要访问这个文件夹及其子文件夹下的文件,就不会报错了。

还有个问题就是,当修改了html文件以后,浏览器中的文件并不会更新,需要打开html并刷新页面才行

相关推荐
Lkstar14 分钟前
ES6+ 必备特性复习:解构、展开运算符、Symbol、Proxy
javascript·面试
半兽先生15 分钟前
vue高性能下拉组件 支持上万数据不卡顿
前端·javascript·vue.js
invicinble19 分钟前
前端框架使用vue-cli( 第二层:工程配置层--路由页面配置)
javascript·vue.js·前端框架
四岁爱上了她28 分钟前
自定义标签切换动画
javascript·css·css3
普修罗双战士32 分钟前
专业Markdown转HTML工具类:修复优化与Spring Boot适配
windows·spring boot·html
坤盾科技1 小时前
Docker 离线地图服务器搭建实战:Node.js + OpenLayers + MBTiles
linux·javascript·arcgis·docker·node.js
Copy_Paste_Coder1 小时前
小程序失败后,换个方向,终于成功搞到收益
前端·javascript·后端
ZC跨境爬虫1 小时前
跟着 MDN 学 HTML day_31:(AbortSignal 深入解析与高级中止模式)
前端·ui·html·音视频·视频编解码
im_AMBER1 小时前
Browser Agent 开发:从浏览器插件到Electron CDP
前端·javascript·架构·electron·agent
ZC跨境爬虫1 小时前
跟着 MDN 学 HTML day_30:(AbortController 实现可取消的异步请求)
前端·ui·html·edge浏览器·媒体