WebSocket和HTTP的区别:
HTTP协议是用在应用层的协议,是基于TCP协议的,HTTP协议每次建立链接也必须要有三次握手才能发送信息,信息发送完成之后会断开连接。
HTTP链接每次请求都要三次握手才能发送自己的信息。每一个request对应一个response。只有长链接是在一定的期限内保持链接。保持TCP连接不断开。客户端与服务器通信,必须要有客户端发起然后服务器返回结果。客户端是主动的,服务器是被动的。
WebSocket是为了解决客户端一定时间内发起多个HTTP请求到服务器资源浏览器必须要经过长时间的轮训问题而生的,他实现了多路复用,是全双工通信。在webSocket协议下客户端和浏览器可以同时发送信息。 建立了WebSocket之后服务器不必在浏览器发送request请求之后才能发送信息到浏览器。这时的服务器已有主动权想什么时候发就可以发送信息到服务器。而且信息当中不必在带有head的部分信息了与HTTP的长链接通信来说,这种方式,不仅能降低服务器的压力。而且信息当中也减少了部分多余的信息。WebSocket使用的场景例如游戏,聊天等需要实时发送数据流的情况下。
WebSocket接口测试分为ws和wss协议和HTTP协议,HTTPS协议对应,一个是非加密的,一个是加密协议。进行HTTP协议API接口测试,在最近使用的eolink API管理与测试平台上进行测试。选择好请求方式输入测试的url,请求头部,请求体等信息就可以进行测试,请求后收到后端返回的信息会直接返回到下方的输出栏中。
对接口进行WebSocket也是十分的简单,选择ws测试之后会自动切换到ws测试格式界面,输入地址进行连接,连接之后会显示一个断开连接的按钮,说明连接是一直动态保持的,每次测试不需要重新建连接,直到测试完成之后手动进行断开。测试发送与返回的测试结果也打印在了界面上,查看十分方便。
总结:
HTTP是单向的,客户端发送请求,服务器发送响应。每次HTTP或HTTPS请求每次都会新建与服务器的连接,并且在获得响应后,连接将自行终止。WebSocket是双向的,与HTTP不同,它以ws://或wss://开头。它是一个有状态协议,这意味着客户端和服务器之间的连接将保持活动状态,直到被任何一方(客户端或服务器)终止。
想要了解更多eolink相关信息可以访问官网:www.eolink.com