websocket简介
WebSocket 协议在2008年诞生,2011年成为国际标准。所有浏览器都已经支持了。
它的最大特点就是,服务器可以主动向客户端推送信息,客户端也可以主动向服务器发送信息,是真正的双向平等对话,属于服务器推送技术的一种。
上手使用
:::warning 特别说明: websocket 功能仅支持 pig 3.6.2+版本 :::
① 添加依赖
<dependency>
<groupId>com.pig4cloud.plugin</groupId>
<artifactId>websocket-spring-boot-starter</artifactId>
<version>1.2.0</version>
</dependency>
② 测试使用
:::warning 👉 使用 websocket 在线测试工具调试 :::
- 服务地址:
# 例如链接upms模块的ws接口 ws://127.0.0.1:9999/admin/ws/info?access_token=xxxx
ws://127.0.0.1:9999/路由前缀/ws/info?access_token=token
进阶使用
① 服务端推送消息
:::warning 默认sessionKey为客户端登录的用户名,比如给admin 用户发送就是// 在服务端需要发送 ws 给客户端发送出,直接使用如下工具类发送
WebSocketMessageSender.send(sessionKey,message)
WebSocketMessageSender.send(“admin”,”hello world”) :::
② 个性化客户端消息处理
- 默认直接输出客户端请求的消息
注入 Spring PlanTextMessageHandler 实现即可 ```java @Service public class CustomPlanTextMessageHandler implements PlanTextMessageHandler {
/**
- 普通文本消息处理
- @param session 当前接收消息的session
- @param message 文本消息 */ @Override public void handle(WebSocketSession session, String message) { log.info(“sessionId {} ,msg {}”, session.getId(), message); }
} ```