vue集成cesium后打成的dist包,双击index.html报错CORS,怎么解决?

vue集成cesium后打成的dist包,双击index.html报错CORS.
image.png

需求就是不能借助任何形式的http server,要求dist包拷贝到任何电脑,双击index.html就能运行显示cesium的东西。
有这个需求,是因为这个dist会放到unreal engine5里面去和ue5做交互。
但是问题是ue5只能加载双击能直接打开的index.html。
或者有没有懂UE5的大神,这种通过双击不能打开的index.html怎么部署到ue5里面?

搜索过网页各种解决方案、问过deepseek。 也按照各种方案试过了,还是报错CORS。

image.png

image.png

image.png

以上方式都试过了,没有作用,依然报错CORS。

阅读 1k
3 个回答
✓ 已被采纳

你犯了方向性错误,ue5,最终塞exe里还是apk里?不管哪个都能起本地服务吧,然后把dist塞进去就ok了

回答:你把你的index.html 的内容贴一下呢,关于直接加载静态资源的报错情况,我看你这个js文件应该是存在的,以相对路径引入时是可以找得到的,然后再把网络请求的情况截图看看,目前确实是报错被跨域拦住了

首先 双击index.html 来打开项目就是错误的操作。

正常情况你需要启动一个 HTTP 服务来指向你的 Vue 项目打包后的 dist 目录,来访问 index.html 文件。

比如说在 dist 目录下,右键空白区域启动 CMD 或者 PowerShell(或者在资源浏览器中的地址栏键入CMD来打开 CMD),执行 npx http-server 这个命令,启动一个指向 dist 目录的 HTTP 服务。

图片.png

图片.png


如果你觉得太麻烦。那么在将错就错的情况下,可以调整 vite.config.ts 中的 base 参数或者 vue.config.js 中的 publicpath 参数为 ./ 来以相对目录的形式引入编译后的资源文件。
可能可以正常预览项目中的一部分功能

推荐问题