关于sockjs的failed: Invalid frame header错误

如题。
WebSocket connection to 'ws://localhost:9527/sockjs-node/550/aalot5ze/websocket' failed: Invalid frame header
这个报错一直在后台存在,我不是很懂websocket,但是我在网上去查询过这个报错,他们的解决办法就是 :

  1. 注释掉,sockjs中的某一行代码。
  2. 在vue中的配置文件vue.config.js,修改端口。
  3. 扩大wesocket的字节范围。
  4. 和压缩有关,说是开启压缩。

这写我都有试过,除了第一个,因为不可取。第三种的解决方案,我不知道在哪里进行扩大。怎么扩大。
大佬先看下问题截图:
image.png
基本上2秒一次。
image.png
这是netWork的信息。
怎么解决,或者从哪一方面介入呢?

阅读 15.8k
2 个回答
新手上路,请多包涵

出现这个问题,可能是代理问题,这时我们修改下代理,加个ws参数,应该就没问题了

以vue cli3.x为例,vue.config.js修改如下:

// ...
devServer: {
  publicPath, 
  port: 5000,
  proxy: {
    '/': {
      ws: false, // 这里把ws代理给关闭
      target: 'http://www.test.com',
      changeOrigin: true
    }
  }
},
// ... 

webpack 的 proxy 使用了非常强大的http-proxy-middleware中间件,具体介绍: https://github.com/chimurai/http-proxy-middleware#options

写到最后,欢迎关注作者:http://fenxianglu.cn/

2人点赞

前端开发

作者:webStyle_虎_
链接:https://www.jianshu.com/p/0fb...
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

刚看到的

image.png
亲测有用。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题