使用webpack开发服务器代理时,SignalR发生错误[无效帧头]。

问题描述 投票:0回答:1

使用webpack开发服务器代理时,SignalR发生错误[无效帧头]。

Win10 + NodeJs(10.15.3)

有一个web前端项目使用 @aspnet/signalr 单元,并发展与 webpack-dev-server.

我用的是 @aspnet/signalr 像这样。

const connection = new signalR.HubConnectionBuilder()
  .withUrl('/hubs/global', {
    accessTokenFactory: () => getToken()
  })
  .build()

connnection.on('some event', function doSomeThing() {})

connection
  .start()
  .then(() => console.log('start success'))
  .catch(err => console.error(err))

我想把websocket连接代理到我的服务器上 所以我配置了我的... webpack.config.js 像这样。

proxy: {
  '/api': {
    target: `http://${devServerIp}`,
    changeOrigin: true,
  },
  '/hubs': {
    target: `http://${devServerIp}`,
    changeOrigin: true,
    ws: true,
  },
},

但我得到了以下错误:Invalid frame header

我想让dev-server能够正确代理websocket请求。

你有一些类似的经验来解决这个问题吗?

javascript node.js signalr webpack-dev-server
1个回答
-1
投票

你可能应该把HTTP改成HTTPS。

© www.soinside.com 2019 - 2024. All rights reserved.