WebSocket 接口测试浅谈

网络
WebSocket 使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。

什么是 WebSocket

WebSocket 是一种基于在单个 TCP 连接上进行全双工通信的协议,解决了HTTP协议不适用于实时通信的缺点,相较于 HTTP 协议,WebSocket 协议实现了持久化网络通信,可以实现客户端和服务端的长连接,能够进行双向实时通信,协议名为"ws"。

WebSocket 使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在 WebSocket API 中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。在 WebSocket API 中,浏览器和服务器只需要做一个握手的动作,然后,浏览器和服务器之间就形成了一条快速通道。两者之间就直接可以数据互相传送。

HTTP与WebSocket

WebSocket的特点

  • 建立在 TCP 协议之上,服务器端的实现比较容易。
  • 与 HTTP 协议有着良好的兼容性。默认端口也是80和443,并且握手阶段采用 HTTP 协议,因此握手时不容易屏蔽,能通过各种 HTTP 代理服务器。
  • 数据格式比较轻量,性能开销小,通信高效。
  • 可以发送文本,也可以发送二进制数据。
  • 没有同源限制,客户端可以与任意服务器通信。
  • 协议标识符是ws(如果加密,则为wss),服务器网址就是 URL。
ws://example.com:80/some/path

 

Socket 是什么?

网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个 Socket(套接字),因此建立网络通信连接至少要一对端口号。

Socket 本质:是对 TCP/IP 协议栈的封装,它提供了一个针对 TCP 或者 UDP 编程的接口,并不是另一种协议。通过 Socket,你可以使用 TCP/IP 协议。

责任编辑:赵宁宁 来源: 测试玩家勇哥
相关推荐

2023-12-29 20:25:51

2022-07-27 11:51:39

契约测试开发测试

2023-12-07 19:19:11

2011-04-22 16:05:26

测试

2012-12-24 22:58:07

测试网络测试

2010-04-13 10:49:32

2009-08-14 17:58:05

C#接口方法

2011-05-16 14:13:04

模型测试

2011-06-08 17:23:12

测试用例

2022-08-05 22:15:26

Python自动化测试

2010-04-13 10:43:05

MPLS

2010-09-17 15:12:28

2023-04-17 19:43:54

兼容性测试软件测试

2010-04-13 10:54:33

MPLS

2009-09-02 14:18:08

C#声明COM接口

2010-10-11 10:33:51

linksys无线路由

2011-06-08 16:22:24

白盒测试

2011-06-14 15:56:42

单元测试

2011-04-18 11:34:34

嵌入式软件测试

2021-11-01 13:53:24

自动驾驶数据人工智能
点赞
收藏

51CTO技术栈公众号