用webSocket发送消息怎么确定用户收到消息了呢 [问题点数:40分] 不显示删除回复 显示所有回复 显示星级回复 显示得分回复 只显示楼主 收藏 sinat_24367905 sinat_24367905 结帖率:0% java webSocket 用webSocket给用户发送消息。如果用户关闭浏览器的话如何确定用户是否能收到消息 更多0 分享到: 发表于: 2015-08-12 15:32:33 楼主 对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理 回复次数:4 优快云官网 unix系列系统镜像下载 Unix操作系统设计(中文版) SUN的UNIX操作系统 UNIX操作系统设计 DB2 v8.2,v9.1,v9.5,v9.7下载地址及详细安装图解 DB2全套学习资料 DB2数据库管理软件 - db2mon v1.0 IBM DB2 通用数据库 在64位平台上使用DB2 通用数据库.rar DB2数据库odbc驱动 任意数据库转换系统 DB2DB 1.8 rui888 无法显示此用户 他再 发信息给你啊。 好比2次握手。 回复于: 2015-08-12 15:55:23 #1 得分:0 对我有用[1] 丢个板砖[0] 引用 | 举报 | 管理 gam2046 forDream_ WebSocket 可能进入某种半死不活的状态。这实际上也是原有网络世界的一些缺陷性设计。WebSocket 长连接虽然解决了服务器和客户端两边的问题,但坑爹的是网络应用除了服务器和客户端之外,另一个巨大的存在是中间的网络链路。一个 HTTP/WebSocket 连接往往要经过无数的路由,防火墙。你以为你的数据是在一个“连接”中发送的,实际上它要跨越千山万水,经过无数次转发,过滤,才能最终抵达终点。在这过程中,中间节点的处理方法很可能会让你意想不到。 比如说,这些坑爹的中间节点可能会认为一份连接在一段时间内没有数据发送就等于失效,它们会自作主张的切断这些连接。在这种情况下,不论服务器还是客户端都不会收到任何提示,它们只会一厢情愿的以为彼此间的红线还在,徒劳地一边又一边地发送抵达不了彼岸的信息。而计算机网络协议栈的实现中又会有一层套一层的缓存,除非填满这些缓存,你的程序根本不会发现任何错误。这样,本来一个美好的 WebSocket 长连接,就可能在毫不知情的情况下进入了半死不活状态。 而解决方案,就是让服务器和客户端能够发送 Ping/Pong Frame( RFC 6455 - The WebSocket Protocol)。这种 Frame 是一种特殊的数据包,它只包含一些元数据而不需要真正的 Data Payload,可以在不影响 Application 的情况下维持住中间网络的连接状态。 回复于: 2015-08-13 20:07:03 #2 得分:0 对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理 qq_18662981 我名涛 顶 顶 顶 顶 ,让大虾看见 回复于: 2015-10-16 09:34:18 #3 得分:0 对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理 weixin_39856083 weixin_39856083 对方离线状态下收不到信息怎么办啊? 回复于: 2017-08-15 14:55:50