猿问

前端 websocket 关闭 ws.close()的问题

之前没怎么用过websocket ,这次供应商决定用这个, 我这里是客户端,我查了点资料,websocket 断开连接好像是两种方式,一种是客户端发出请求给服务器,服务器响应关闭,

var ws=new WebSocket("ws://127.0.0.1:8000");
ws.onopen=function(){
  ws.close(); 
};
ws.onclose=function(e){  console.log(e);
};

或者服务端按照一定的逻辑,比如 返回数据时发送close, 客户端在onclose里关闭,

var ws=new WebSocket("ws://127.0.0.1:8000");
ws.onclose=function(e){  console.log(e);
  ws.close(); //关闭TCP连接};

刚开始都不主动关闭,就是不用 ws.close()关闭,虽然好像会自动关闭,但是好像一个没有断开,再发送第二个会出问题,如果我不知道服务端会不会主动关闭, 我在onopen和 onclose 里面都写 ws.close() 会不会出问题??????


人到中年有点甜
浏览 12196回答 1
1回答

绝地无双

还有一点要注意,你要定时给服务端发送心跳数据包证明客户端存活
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答