WebSocket API 有什么用?
简介: API 代表应用程序编程接口。 API 可以定义为一组预定义的指令,描述不同的应用程序如何相互通信。因此,可以将 API 视为在 Web 服务器和应用程序之间传输数据的中间人。每个应用程序都使用某种 API 在应用程序之间传输数据。 API 为不同的应用程序提供了向其他外部方开放其功能和数据以利用它并开发新应用程序的能力。 Google Maps API、Twitter API 是一些著名的例子。
WebSocket: WebSocket是一种通信协议,主要用于客户端和服务器之间的通信。
WebSocket 的特点是:
- 全双工协议: WebSocket 是一种全双工协议,因为它允许应用程序同时发送和接收数据。
- 有状态协议:这意味着服务器和客户端之间的连接不会被终止,直到并且除非被客户端或服务器中的任何一个关闭。一旦连接从一端终止,它也会被另一端关闭。
- 3 次握手: Websocket 使用 3 次握手(也称为 TCP 连接)来建立客户端和服务器之间的通信。
WebSocket API: WebSocket API 允许我们创建 Web 套接字,它是一种 JavaScript API,能够使用 TCP 连接进行全双工通信。 WebSocket 默认使用 80 端口。
WebSocket API 的特点是:
- 双向意味着数据可以由客户端和服务器端双方发送和接收。
- 使用全双工模型进行通信。
- 它使用单个 TCP 连接进行客户端和服务器之间的通信。
- 主要用于聊天应用、视频通话应用等实时应用。
- 使用网络套接字可以实现数据的快速传输。
- 可以缩放,但只能垂直缩放。
WebSocket API的使用:WebSocket API 的使用范围很广,其中一些是:
- 在线教育领域: Web 套接字显然用于在线教育应用程序,因为这些应用程序需要用于视频流或共享屏幕的实时数据,这使得 Web 套接字成为一个非常好的选择,因为它能够提供所有这些功能。
- 游戏:游戏之后世界变得疯狂,用户希望实时游戏与多个玩家一起玩以及聊天和通话设施,因此要实现所有这些目标,任何人都必须使用 Web 套接字来开发不同的游戏应用程序。
- 协作应用程序:我们都使用过谷歌文档,这使得多人可以使用同一个工作空间并同时工作,这些应用程序是使用 HTML5 WebSockets 构建的。
- 实时数据可视化:以前以吸引人的方式可视化实时数据是一项相当艰巨的任务,但使用 html5 web sockets 真的很容易。
- 事件更新应用程序: Web 套接字广泛用于制作应用程序,将所有平台的实时更新提供给某个通用平台。
- 跟踪用户行为:组织对了解用户在与 Web 应用程序交互时的行为非常感兴趣,以便就用户正在寻找的内容或产品提供更好的建议。在实现所有这些事情时,web socket 是必须的选择。
参考: https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API