出现这种情况可能是因为Chrome对于WebSocket的实时开发服务器设置有限制。以下是一种解决方法,可以尝试在Angular的实时开发服务器配置中添加一些选项来解决这个问题。
在Angular项目的根目录下找到proxy.conf.json
文件,如果不存在则创建一个。在该文件中添加以下内容:
{
"/api": {
"target": "http://localhost:3000",
"secure": false,
"ws": true
}
}
这里的/api
是你的实时开发服务器的代理路径,target
是实际运行在http://localhost:3000
上的服务器地址。确保将target设置为你实际使用的服务器地址。
然后,在package.json
文件中找到"start"
命令,将其修改为以下内容:
"start": "ng serve --proxy-config proxy.conf.json"
保存文件后,重新启动Angular开发服务器。
这样配置后,Angular的实时开发服务器会代理所有以/api
开头的请求到指定的目标服务器,并且允许WebSocket连接。
请注意,上述解决方法仅适用于使用Angular的实时开发服务器,并且假设你的实际服务器运行在http://localhost:3000
上。如果你使用的是其他服务器或端口,请相应地修改配置。