繁体   English   中英

当我的互联网连接不稳定时(对于消息传递应用程序),我应该使用网络套接字吗?

[英]Should I use web-socket when my internet connectivity is unstable (for messaging app)?

我有2个客户端,他们通过移动设备(使用网站)相互发送消息。

当前,每个客户端每隔一秒钟对服务器进行一次ajax调用,以检查是否有新消息,因此,即使没有Internet连接,消息又会再次出现。

我想尝试使用Web套接字(用于实时连接并在学习途中学习新技术),但是我不确定一旦Internet连接断开并返回时该怎么做(该Web套接字不再连接.. 。)

我正在寻找可以始终保持连接状态的功能,并且当连接断开并恢复连接时,它会自动重新连接。

如果您在网站(浏览器)上使用socket.io,而在服务器上使用套接字(例如express.io),则socket.io上的选项可以在设备再次连接互联网时自动重新连接: http : //socket.io/文档/客户端API /#IO#协议

(在上一链接,请参阅io协议部分中的“重新连接”选项)

是。

只需记住合并您自己的死连接检测即可。 基本上,您必须实现on ping / pong机制,即每X次从服务器发送到客户端的一条数据(例如json消息{ping:true} )。 如果客户端在给定时间内未回复,则服务器将认为客户端连接已断开并断开连接。 如果客户端在一段时间内未从服务器获得ping,则客户端会认为连接已死并重新连接。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM