Vue应用部署测试环境SockJS跨域报错:开发环境正常,测试环境却失败了?

vue应用部署测试环境sockjs跨域报错:开发环境正常,测试环境却失败了?

Vue项目部署测试环境SockJS跨域问题详解及解决方案

在使用Vue和Webpack构建的项目中,本地开发环境运行良好,但部署到测试环境(10.181.12.125:30016)后,却出现了SockJS-Node跨域报错。 本地请求 http://localhost:8080/sockjs-node/info?t=xxx 正常,但部署后则失败。项目打包后,通过Dockerfile使用 npm run start 命令启动,即 webpack-dev-server –config build/webpack.dev.conf.js。

问题原因在于测试环境中使用了 npm run start 命令,该命令启动的是开发环境的webpack-dev-server,监听8080端口。 此服务仅用于本地开发和热更新,它并不知道实际部署地址为10.181.12.125:30016。因此,当页面请求SockJS-Node时,由于请求地址与webpack-dev-server监听端口不符,导致跨域错误。

解决方案:

立即学习“前端免费学习笔记(深入)”;

避免在测试或生产环境使用 npm run start 命令。 npm run start 仅适用于本地开发。 测试和生产环境应使用Nginx或其他静态资源服务器(如Apache)来提供打包后的静态资源。

npm run build 命令生成用于生产环境的静态文件,这些文件应由Nginx或其他服务器托管,而非webpack-dev-server。 这样,所有请求都将指向正确的服务器地址(10.181.12.125:30016),从而解决跨域问题。

以上就是Vue应用部署测试环境SockJS跨域报错:开发环境正常,测试环境却失败了?的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/3047084.html

(0)
上一篇 2025年3月13日 18:37:31
下一篇 2025年3月13日 18:37:40

AD推荐 黄金广告位招租... 更多推荐

相关推荐

发表回复

登录后才能评论