WebSocat:你的WebSocket命令行利器

https://github.com/vi/websocat 如果你经常使用WebSocket协议,那么你一定需要一个方便的工具来管理它。今天就来介绍一个强大的命令行工具 - WebSocat。它不仅可以连接和服务WebSocket,还能与其他工具集成,让你轻松完成各种WebSocket操作。

什么是WebSocat?

WebSocat是一个功能强大的命令行工具,可以连接和服务WebSocket,并且支持多种功能,例如:

  • 连接到公共WebSocket服务器:例如,你可以连接到 ws://ws.vi-server.org/mirror 服务器,并测试WebSocket连接。
  • 作为WebSocket服务器:你可以使用 -s 参数启动一个WebSocket服务器,并监听指定端口。
  • 与其他程序交互:WebSocat可以将外部程序的输入输出与WebSocket连接绑定,实现数据交换。
  • 广播消息:你可以使用 broadcast 参数将消息广播到所有连接的WebSocket客户端。
  • TCP/WebSocket代理:WebSocat可以将TCP连接转换为WebSocket连接,反之亦然。
  • 支持多种平台:WebSocat支持Linux、Windows和macOS平台。

WebSocat的使用案例

  • 连接公共WebSocket服务器:
websocat ws://ws.vi-server.org/mirror 123 123 ABC ABC
  • 作为WebSocket服务器:
websocat -s 1234
  • 使用Chromium远程调试:
# 打开Chromium远程调试端口
chromium --remote-debugging-port=9222

# 获取WebSocket调试URL
curl -sg http://127.0.0.1:9222/json/new | grep webSocketDebuggerUrl | cut -d'"' -f4 | head -1

# 使用WebSocat连接调试URL
echo 'Page.navigate {"url":"https://example.com"}' | websocat -n1 --jsonrpc --jsonrpc-omit-jsonrpc ws://127.0.0.1:9222/devtools/page/A331E56CCB8615EB4FCB720425A82259
  • TCP/WebSocket代理:
websocat --oneshot -b ws-l:127.0.0.1:1234 tcp:127.0.0.1:22

WebSocat的优势

  • 简单易用:WebSocat的命令行接口非常直观,易于上手。
  • 功能强大:支持各种WebSocket操作,例如连接、服务、广播、代理等。
  • 灵活可定制:可以根据需要配置各种参数,满足不同的需求。
  • 多平台支持:支持Linux、Windows和macOS平台。

总结

WebSocat是一个功能强大、易于使用的WebSocket命令行工具,可以帮助你轻松管理WebSocket连接。无论你是开发人员、测试人员还是系统管理员,WebSocat都是一个非常实用的工具。