WSS,websocket服务测试工具

轩辕暗神 1年前 ⋅ 445 阅读

Websocket 简介

WebSocket 是一种基于 TCP 连接的全双工通信的协议,其工作在应用层,建立连接的时候通过复用 Http 握手通道,完成 Http 协议的切换升级,即切换到 WebSocket 协议,协议切换成功后,将不再需要客户端发起请求,服务端就可以直接主动向客户端发送数据,实现双向通信。

和 Http 相比,WebSocket有以下优点:

  • WebSocket 是双向通信协议,可以双向发送或接受信息。HTTP是单向的,只能由客户端发起请求时,服务器才能响应,服务器不能主动向客户端发送数据。
  • WebSocket 可以和 HTTP Server 共享相同端口。
  • *WebSocket 协议可以更好的支持二进制,可以直接传送二进制数据。 同时WebSocket协议的头部非常小,服务器发到客户端的数据包的包头,只有2~10个字节(取决于数据包的长度),客户端发送服务端的包头稍微大一点,因为其要进行掩码加密,所以还要加上4个字节的掩码。总得来说,头部不超过14个字节。 支持扩展,用户可以扩展协议实现自己的子协议。

在做websocket服务开发过程中,服务端与客户端开发人员编写好websocket处理逻辑后,如何才能及时的测试自己编写的代码是否生效?有没有相关的工具来支撑websocket协议测试呢

本文给大家分享一个基于nodejs平台实现的websocket测试工具-wscat,来帮助大家提高开发效率,及时发现解决问题~

参考官方说明:https://github.com/websockets/wscat

安装

基于windows下的使用介绍 1.首先要安装nodejs http://nodejs.cn/download/ 2.安装好nodejs后,打开命令行,输入npm install -g wscat 在全局安装wscat工具

npm install -g wscat

ubuntu安装 更新系统

sudo apt-get update
sudo apt-get upgrade

安装后端服务nodejs npm ws

sudo apt-get install -y nodejs npm
npm install -y ws
sudo apt install -y node-ws

作为websocket服务端的使用

打开命令窗口,输入命令:wscat -l 8888 (注意是字母L)在本地8888端口启动websocket服务监听,此时就已经在你本机中启动了一个websocket服务端程序了

作为websocket客户端的使用

打开另一个命令窗口,输入命令:wscat -c ws://localhost:8888 来连接到刚刚创建的websocket服务端

在已经连接的客户端会话窗口中输入字符:hello from client 回车,将字符发送到服务端

切换到服务端会话窗口中,可以看到已经收到了客户端发来的字符,此时可以在服务端窗口中输入hi from server回车,将服务端响应字符写回客户端

再切换回客户端会话窗口中,能看到服务端写回来的响应字符了

再结合SpringBoot开发的websocket服务端来演示下此工具的使用 示例工程:http://github.com/netbuffer/spring-boot-websocket-demo 启动SpringBoot websocket服务端

打开命令窗口,输入wscat -c ws://localhost:17000/ws?token=your-token 连接上服务,尝试发送字符hello到服务端


全部评论: 0

    我有话说: