mirror of
https://gitee.com/yudaocode/SpringBoot-Labs.git
synced 2026-09-03 05:53:54 +08:00
增加 spring websocket 示例
This commit is contained in:
@@ -6,14 +6,13 @@ import cn.iocoder.springboot.lab25.springwebsocket.message.UserJoinNoticeRequest
|
||||
import cn.iocoder.springboot.lab25.springwebsocket.util.WebSocketUtil;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.util.StringUtils;
|
||||
|
||||
import javax.websocket.Session;
|
||||
import org.springframework.web.socket.WebSocketSession;
|
||||
|
||||
@Component
|
||||
public class AuthMessageHandler implements MessageHandler<AuthRequest> {
|
||||
|
||||
@Override
|
||||
public void execute(Session session, AuthRequest message) {
|
||||
public void execute(WebSocketSession session, AuthRequest message) {
|
||||
// 如果未传递 accessToken
|
||||
if (StringUtils.isEmpty(message.getAccessToken())) {
|
||||
WebSocketUtil.send(session, AuthResponse.TYPE,
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
package cn.iocoder.springboot.lab25.springwebsocket.handler;
|
||||
|
||||
import cn.iocoder.springboot.lab25.springwebsocket.message.Message;
|
||||
|
||||
import javax.websocket.Session;
|
||||
import org.springframework.web.socket.WebSocketSession;
|
||||
|
||||
/**
|
||||
* 消息处理器接口
|
||||
@@ -15,7 +14,7 @@ public interface MessageHandler<T extends Message> {
|
||||
* @param session 会话
|
||||
* @param message 消息
|
||||
*/
|
||||
void execute(Session session, T message);
|
||||
void execute(WebSocketSession session, T message);
|
||||
|
||||
/**
|
||||
* @return 消息类型,即每个 Message 实现类上的 TYPE 静态字段
|
||||
|
||||
@@ -5,14 +5,13 @@ import cn.iocoder.springboot.lab25.springwebsocket.message.SendToAllRequest;
|
||||
import cn.iocoder.springboot.lab25.springwebsocket.message.SendToUserRequest;
|
||||
import cn.iocoder.springboot.lab25.springwebsocket.util.WebSocketUtil;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import javax.websocket.Session;
|
||||
import org.springframework.web.socket.WebSocketSession;
|
||||
|
||||
@Component
|
||||
public class SendToAllHandler implements MessageHandler<SendToAllRequest> {
|
||||
|
||||
@Override
|
||||
public void execute(Session session, SendToAllRequest message) {
|
||||
public void execute(WebSocketSession session, SendToAllRequest message) {
|
||||
// 这里,假装直接成功
|
||||
SendResponse sendResponse = new SendResponse().setMsgId(message.getMsgId()).setCode(0);
|
||||
WebSocketUtil.send(session, SendResponse.TYPE, sendResponse);
|
||||
|
||||
@@ -5,14 +5,13 @@ import cn.iocoder.springboot.lab25.springwebsocket.message.SendToOneRequest;
|
||||
import cn.iocoder.springboot.lab25.springwebsocket.message.SendToUserRequest;
|
||||
import cn.iocoder.springboot.lab25.springwebsocket.util.WebSocketUtil;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import javax.websocket.Session;
|
||||
import org.springframework.web.socket.WebSocketSession;
|
||||
|
||||
@Component
|
||||
public class SendToOneHandler implements MessageHandler<SendToOneRequest> {
|
||||
|
||||
@Override
|
||||
public void execute(Session session, SendToOneRequest message) {
|
||||
public void execute(WebSocketSession session, SendToOneRequest message) {
|
||||
// 这里,假装直接成功
|
||||
SendResponse sendResponse = new SendResponse().setMsgId(message.getMsgId()).setCode(0);
|
||||
WebSocketUtil.send(session, SendResponse.TYPE, sendResponse);
|
||||
|
||||
Reference in New Issue
Block a user