【问题标题】:why we use socket.io client we can make app with only using via socket.io server?为什么我们使用 socket.io 客户端,我们只能通过 socket.io 服务器来制作应用程序?
【发布时间】:2021-10-15 17:13:13
【问题描述】:

我有一些疑问:-

  1. 使用socket.io客户端需要什么我们只能使用socket.io服务器来停止刷新应用。
  2. socket.io 客户端和 socket.io 服务器有什么不同。

【问题讨论】:

  • 您应该问自己的真正问题是:为什么使用 socket.io 而不是原生 WebSocket 支持? ALSO:客户端通常用于 Web 浏览器。跨度>
  • 1.您希望用户和服务器之间的并发连接进行通信。 2.区别是一个是客户端,一个是服务器,服务器监听请求并指示所有客户端。

标签: node.js sockets websocket socket.io serversocket


【解决方案1】:

查看this link

socket-io.client 是 socket.io 客户端实现的代码。该代码可以由浏览器客户端或正在启动与其他服务器的 socket.io 连接的服务器进程使用(因此在 socket.io 连接中扮演客户端角色)。

未启动与其他服务器的 socket.io 连接的服务器不会使用此代码。这可能应该是因为当使用 socket.io 时,客户端和服务器似乎都使用相同的 socket.io.js 文件(因为它们都引用同名的文件) ,但实际上并非如此。服务器使用的文件与客户端不同。

来自 socket-io.client 的 Github 页面:

socket.io-client 的独立版本由 socket.io 服务器自动公开为 /socket.io/socket.io.js。或者,您可以提供在此存储库根目录中找到的文件 socket.io.js。

请记住,客户端和服务器都有独特的功能,因此它们使用不同的代码也就不足为奇了。尽管它们共享用于解析协议之类的代码,但服务器具有运行服务器或挂钩到现有 Web 服务器的能力,并且它具有诸如 .join() 和 .leave() 之类的方法以及跟踪的数据结构所有连接的套接字,预计将存在于 node.js 环境中。客户端能够发起连接(发送正确的 http 请求),如果不支持 webSockets 则进行轮询,如果存在则在本机 webSocket 实现上构建,等等......

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-19
    • 2021-05-18
    • 1970-01-01
    • 2012-03-09
    • 2021-10-18
    相关资源
    最近更新 更多