From b9d0deddd838c69c89f98c1eed83274c88b1fc63 Mon Sep 17 00:00:00 2001 From: tongtongstudio Date: Fri, 10 Oct 2025 11:10:56 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=B9=B3=E6=9D=BF=E8=BF=9E?= =?UTF-8?q?=E6=8E=A5websocket?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../videotablet/config/WebSocketConfig.java | 2 +- .../interceptor/AuthHandshakeInterceptor.java | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/onekeycall/videotablet/config/WebSocketConfig.java b/src/main/java/com/onekeycall/videotablet/config/WebSocketConfig.java index 9f7ae41..f386366 100644 --- a/src/main/java/com/onekeycall/videotablet/config/WebSocketConfig.java +++ b/src/main/java/com/onekeycall/videotablet/config/WebSocketConfig.java @@ -21,7 +21,7 @@ public class WebSocketConfig implements WebSocketConfigurer { @Override public void registerWebSocketHandlers(WebSocketHandlerRegistry registry) { - registry.addHandler(webSocketHandler, "/ws") // 客户端连接端点 + registry.addHandler(webSocketHandler, "/ws/tablet_ws") // 客户端连接端点 .setAllowedOrigins("*") // 允许跨域 .addInterceptors(new AuthHandshakeInterceptor(jwtUtil)); // 握手拦截器(如JWT校验) } diff --git a/src/main/java/com/onekeycall/videotablet/interceptor/AuthHandshakeInterceptor.java b/src/main/java/com/onekeycall/videotablet/interceptor/AuthHandshakeInterceptor.java index 7c7551a..c366859 100644 --- a/src/main/java/com/onekeycall/videotablet/interceptor/AuthHandshakeInterceptor.java +++ b/src/main/java/com/onekeycall/videotablet/interceptor/AuthHandshakeInterceptor.java @@ -24,7 +24,6 @@ public class AuthHandshakeInterceptor implements HandshakeInterceptor { public boolean beforeHandshake(ServerHttpRequest request, ServerHttpResponse response, WebSocketHandler wsHandler, Map attributes) throws Exception { String authHeader = request.getHeaders().getFirst("Authorization"); String deviceId = request.getHeaders().getFirst("Device-ID"); - String userId = request.getHeaders().getFirst("User-ID"); if (request instanceof ServletServerHttpRequest) { ServletServerHttpRequest servletRequest = (ServletServerHttpRequest) request; @@ -32,13 +31,14 @@ public class AuthHandshakeInterceptor implements HandshakeInterceptor { String sn = httpRequest.getParameter("sn"); attributes.put("sn", sn); log.info("Intercepted - sn: " + sn); - } - if (authHeader == null || !authHeader.startsWith("Bearer ") || userId == null) { - return false; + if (authHeader == null || !authHeader.startsWith("Bearer ")) { + return false; + } + String token = authHeader.substring(7); // 去掉 "Bearer " 前缀 + return jwtUtil.validateDeviceToken(token, deviceId, sn); // 自定义校验逻辑 } - String token = authHeader.substring(7); // 去掉 "Bearer " 前缀 - return jwtUtil.validateAccessToken(userId, token, deviceId); // 自定义校验逻辑 + return false; } @Override