💥解决Vue开发环境报http://localhost:8080/sockjs-node/info...错误💥

vue的小伙伴看见下面这个图眼熟不?不要告诉我你没见过!

我的项目里为什么会有这个?

package.json

node_modules

sockjs-node 是一个JavaScript库,提供跨浏览器JavaScript的API,创建了一个低延迟、全双工的浏览器和web服务器之间通信通道。在项目运行之后,会一直调用这个接口。SockJS是一个JavaScript库(用于浏览器),提供类似于WevSocket的对象。其作用就是开发环境下,保证我们在改完代码重新编译之后,能够通知浏览器重新加载变更结果。这里理解为这个库使用来让本地与浏览器之间的热模块更新通信的。

当我们通过vue/cli5以下版本搭建Vue项目的时候,安装依赖的时候,这个包即使不在package.json里也会装上,看上面2个图。所以当我们启动项目之后,在Network中会自动持续发送 /sockjs-node/info?t=<当前时间戳> 请求

为什么会报错?

前面说了SockJS库是让本地与浏览器之间的热模块更新通信的,如果两个地址对接不上了,可能就会报该错误,再结合这个包的源码来排查一下,可以看到包默认的地址是localhost:80,但是一般本地默认启动是localhost:8080或者我这样的自定义端口,两边地址对不上了。

怎么解决

网上找了几种解决方案

  • 将源码里面的地址改为本地环境 (如果有需求重新执行npm install的时候又得改一次 ❌)
  • 将报错的方法注释掉(首先会有上面那个问题,其次浏览器热更新也失效了 ❌)
  • 查看官网配置文档,是有这个配置项的,改为自己的地址即可 ✅

重新启动项目,控制台再也没有红色的报错啦 🌈🌈🌈

相关推荐
梦诺14 分钟前
vue3 keepAlive+记录滚动条
前端·javascript·vue.js
Bs_MoneyMagnet1 小时前
基于springboot+vue的会议室预约管理系统的设计与实现 源码+文档
java·vue.js·spring boot·后端·spring·毕业设计·计算机毕业设计
Bs_MoneyMagnet1 小时前
基于springboot+vue的茶铺管理系统的设计与实现 源码+文档
java·vue.js·spring boot·后端·spring·毕业设计·计算机毕业设计
志尊宝3 小时前
Vue3 零基础每日笔记(018):按键与鼠标修饰符——回车搜索、Ctrl+S 保存这样写
javascript·vue.js·笔记
志尊宝4 小时前
Vue3 零基础每日笔记(021):class 与 style 动态绑定——对象、数组、三元表达式写法汇总
前端·vue.js·笔记·前端框架·html5
夏幻灵4 小时前
Vue / React 列表渲染中的 key:为什么没有 key,Checkbox 可能“对号跑错”?
前端·javascript·vue.js
Bs_MoneyMagnet5 小时前
基于springboot+vue的旅游行程分享与推荐小程序的设计与实现 源码+文档
java·vue.js·spring boot·后端·微信小程序·毕业设计·计算机毕业设计
岁岁种桃花儿5 小时前
Vue组件第六篇:Vue单文件组件
开发语言·前端·javascript·vue.js
毕业设计70317 小时前
(免费领源码) 基于微信小程序的预制菜商城的设计与实现25172-java、PHP、python、C#、小程序、大数据、单片机、网络工程等)
vue.js·python·mysql·微信小程序·pycharm·微信开发者工具·推荐算法