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