Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/366.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么每隔一段时间向WebSocket服务器发送一个空字符串_Javascript_Websocket - Fatal编程技术网

Javascript 为什么每隔一段时间向WebSocket服务器发送一个空字符串

Javascript 为什么每隔一段时间向WebSocket服务器发送一个空字符串,javascript,websocket,Javascript,Websocket,以下代码段来自一个js文件,该文件使用本机WebSocket api流式传输图像。这个文件被缩小了并且丑陋了,我没有访问原始代码的权限 setInterval(function () { n && n.send("")}, NETWORK.websocketSendMessage) n是一个初始化为本机WebSocket连接对象的对象,该对象流式传输base64编码的JPEG。 间隔时间是一个常数,设置为1000ms 假设这会触发服务器每秒发送一组帧,这将异

以下代码段来自一个js文件,该文件使用本机WebSocket api流式传输图像。这个文件被缩小了并且丑陋了,我没有访问原始代码的权限

setInterval(function () { n && n.send("")},
NETWORK.websocketSendMessage)
n是一个初始化为本机WebSocket连接对象的对象,该对象流式传输base64编码的JPEG。 间隔时间是一个常数,设置为1000ms

假设这会触发服务器每秒发送一组帧,这将异步触发ws对象上的onmessage处理程序集

我试图理解为什么这个间隔是必要的——在我的理解中,使用WebSocket应该首先避免使用这种原始轮询(尽管我认为这显然比每秒使用新http请求的实际轮询要快)

客户机不应该更新它希望继续接收内容的服务器。相反,在我看来,更合乎逻辑的方法是宣布内容何时停止

这可能是一种控制ram的技术吗?onmessage处理程序似乎在每次触发时都会拆除数据的解析器——这会反过来释放流文件使用的ram吗


请记住,这可能是古老的遗留代码,因此了解浏览器的怪癖可能会很有见地。

A是一个设备向另一个设备发送的消息,用于检查两个设备之间的链接是否正在运行,或防止链接断开。您可以在此处了解更多信息

这可能是一种内部解决方法,例如,因为套接字服务器在超时后会丢弃空闲连接…