如何通过Postman连接Spring Boot WebSocket应用的topic/queue?
问题1:Postman订阅
/topic/greetings的操作方法 首先明确:你当前使用的是Spring封装的STOMP over WebSocket协议,和Socket.IO协议不兼容,无法用Postman的Socket.IO模式连接,可按以下两种方式操作:
方式1:使用Postman原生STOMP客户端(推荐)
- 打开Postman,新建请求时选择「WebSocket」类型,切换到STOMP标签页
- 地址栏输入
ws://localhost:8080/greetings,点击「连接」 - 连接成功后,在「订阅目的地」输入框填写
/topic/greetings,点击订阅即可,后续服务端往该通道推送的消息都会在消息列表展示 - 若需要触发服务端推送消息,在发送区域填写应用目的地(格式为
/app/[你后端@MessageMapping注解映射的路径],填写消息体后点击发送即可
方式2:Raw模式手动发送STOMP帧
- 新建WebSocket请求后切换到「Raw」标签,输入地址
ws://localhost:8080/greetings完成连接 - 消息格式选择Text,先发送STOMP连接帧:
CONNECT accept-version:1.1,1.0 host:localhost ^@
注意:末尾的^@是NULL字符,Windows系统按Ctrl+@输入,Mac系统按Cmd+@输入,帧头和帧体之间必须空一行,NULL字符不能省略
- 收到服务端返回的
CONNECTED响应帧后,再发送订阅帧:
SUBSCRIBE id:sub-01 destination:/topic/greetings ^@
其中id可自定义,只要保证唯一即可,发送完成即可完成订阅
问题2:本地测试WebSocket的其他可选方案
- 浏览器插件:比如WebSocket King、Smart WebSocket Client,可直接在Chrome/Edge扩展商店安装,轻量免登录,自带STOMP协议封装,操作比Postman更简便
- 命令行工具wscat:通过npm安装完成后执行
wscat -c ws://localhost:8080/greetings即可连接,适合习惯命令行操作的用户快速测试 - 简易前端测试页:写一个简单的HTML页面引入stomp.js和sockjs-client,模拟真实业务场景的请求逻辑,测试结果更贴合实际生产使用情况
- 其他API调试工具:比如Apifox等国内调试工具,原生支持STOMP/WebSocket测试,操作逻辑更贴合国内开发者习惯
内容的提问来源于stack exchange,提问作者Hapaja
相关产品推荐
相关产品推荐

