我有一个angular 5应用程序,它使用socket.io-client连接到托管在Google云平台上的websocket服务器。但是,我没有打开1个连接,而是在浏览器中看到正在创建多个连接,并且每秒打开一个新连接。我在打开连接的代码中添加了一个调试断点,并且在页面加载时仅触发一次。不知道为什么即使使用101代码成功完成了初始连接,它仍然继续请求新的连接。
private BASE_URL = 'wss://X.XXX.XX.XXX/';
private socket: any;
connectSocket(userId: string) {
this.socket = io(this.BASE_URL, { query: `userId=${userId}`, transports: ['websocket'] });
}
答案 0 :(得分:0)
我需要更多信息来肯定地回答这个问题,但是我可以对这里发生的事情进行有根据的猜测。
我认为连接代码可能放置在一堆代码中,该代码一遍又一遍地执行,从而使其表现出这种行为。
此外,如果这确实是服务器问题,则可以轻松查看服务器实际发回的内容,从而导致套接字关闭。在Chrome浏览器中,在“网络”标签中单击请求的“名称”,然后在“框架”标签中单击-应该可以准确显示在客户端和服务器之间传输的信息类型。