当前位置: 首页 > 知识库问答 >
问题:

了解服务器端的websockets

韩耘豪
2023-03-14
  1. 在客户端,使用“new WebSocket('ws:/blahlah')”
  2. 创建新的套接字处理程序
  3. 然后使用onOpen()方法就知道我们已连接到WS服务器
  4. 使用onMessage()方法,已知已从WS服务器接收到消息
  5. onClose()方法指示套接字连接已关闭

所以从客户的角度来看是很清楚的。但是从服务器的角度来看,流程是如何进行的(就像上面的客户端一样),websocket服务器进程的确切含义是什么,我们的意思是通信发生在TCP上的确切含义是什么,以及我们如何检查(如果问题非常基本的话,我的观点)

谁能解释一下。提前致谢

共有1个答案

叶煌
2023-03-14

在服务器端,它实际上取决于websockets库的实现、语言和API或您自己使用的实现。

此描述仅针对WebSockets的原始实现,并不基于使用任何库来处理WebSockets协议。诸如jWebSockets(Java)、SignalR、Socket.io等库将拥有与WebSockets完全相同的另一个进程。

如果我们讨论的是原始套接字上的原始实现,那么过程是这样的:

    null

客户端将永远不会接收部分数据或无序数据。它将始终按照您发送的顺序接收数据包,并且始终按照您发送的顺序接收数据包。服务器可能部分基于低级TCP层进程接收数据。但总是收到命令。

这个协议是可靠和有序的。

最流行的WebSockets协议规范RFC6455,请记住iOS使用另一种规范,它们可能不是交叉兼容的,这意味着您需要为不同的协议实现专门创建另一种握手功能和数据帧。

 类似资料:
  • 当客户机发送请求时,我想知道客户机请求的数据字段是什么。例如 在上面的请求中,客户端请求了用户的字段和字段。在执行查询时,我如何知道/获得桑格利亚酒-graql服务器中的这些指定字段,即名称和地址?

  • 我想知道Heroku服务器状态,找不到任何关于这个主题的留档。 示例: 任何人都可以解释这个例子吗?在哪里可以找到资源以供将来参考?

  • 我的应用程序运行在weblogic服务器上,在那里我配置了一个JNDI数据源来获取数据库连接。我试图理解weblogic服务器生成的数据源日志。 路径: 日志内容: 看起来有一个错误信息,但我无法理解为什么数据源会给出错误。请帮助我理解这一点。

  • 问题内容: 说我有一个用perl或python编写的脚本。编写在字符串上使用jQuery选择器的函数的最简单方法是什么?即能够做到: 其中的功能是对存储在中的html字符串运行jquery选择器。即使只限于返回字符串(不是完整的jquery对象),它仍然会非常有用。即,如果您需要提供一个JavaScript函数作为回调,这将使结果呈现为脚本语言可理解的内容: 并且它将以列表形式返回回调的结果。 我

  • [warning] 注意 安装前需要保证服务器端与G01云中心的443端口通信保持畅通,可以通过命令 telnet www.gov110.cn 80,telnet apiv.gov110.cn 443,telnet update.gov110.cn 80 telnet scan.gov110.cn 80,telnet monitor.gov110.cn 80,telnet alive.gov110

  • [warning] 注意 安装前需要保证服务器端与G01云中心的通信保持畅通,可以通过命令 telnet www.gov110.cn 80,telnet apiv.gov110.cn 443,telnet update.gov110.cn 80 telnet scan.gov110.cn 80,telnet monitor.gov110.cn 80,telnet alive.gov110.cn 4