From 7653e39b0c809b7f31aed1eaaa42e1662755dfdb Mon Sep 17 00:00:00 2001
From: Xiajijian <1176061145@qq.com>
Date: Sat, 07 Mar 2026 10:33:11 +0800
Subject: [PATCH] 1. 优化精细化巡检业务。
---
ard-sample/src/main/java/com/ard/sample/component/websocket/config/WebSocketDockConfig.java | 33 ++++++++++++++++++++++-----------
1 files changed, 22 insertions(+), 11 deletions(-)
diff --git a/ard-sample/src/main/java/com/ard/sample/component/websocket/config/WebSocketDockConfig.java b/ard-sample/src/main/java/com/ard/sample/component/websocket/config/WebSocketDockConfig.java
index da048be..f6df97e 100644
--- a/ard-sample/src/main/java/com/ard/sample/component/websocket/config/WebSocketDockConfig.java
+++ b/ard-sample/src/main/java/com/ard/sample/component/websocket/config/WebSocketDockConfig.java
@@ -1,18 +1,29 @@
package com.ard.sample.component.websocket.config;
-import org.springframework.context.annotation.Bean;
+import com.ard.sample.component.websocket.handler.*;
+import com.ard.sample.component.websocket.interceptor.DockHandshakeInterceptor;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Configuration;
-import org.springframework.web.socket.server.standard.ServerEndpointExporter;
+import org.springframework.web.socket.config.annotation.EnableWebSocket;
+import org.springframework.web.socket.config.annotation.WebSocketConfigurer;
+import org.springframework.web.socket.config.annotation.WebSocketHandlerRegistry;
-/**
- * 启用WebSocket支持,注册端点处理器
- */
@Configuration
-public class WebSocketDockConfig {
+@EnableWebSocket // 启用原生WebSocket支持
+public class WebSocketDockConfig implements WebSocketConfigurer {
- // 自动注册@ServerEndpoint注解的类
- @Bean
- public ServerEndpointExporter serverEndpointExporter() {
- return new ServerEndpointExporter();
+ @Autowired
+ private DockWebSocketHandler dockWebSocketHandler;
+
+ // 注册WebSocket处理器和路径
+ @Override
+ public void registerWebSocketHandlers(WebSocketHandlerRegistry registry) {
+ // 1. 注册处理器:路径 "/ws/dock/**" 由 DockWebSocketHandler 处理
+ // 2. 添加握手拦截器:验证用户身份DockHandshakeInterceptor
+ // 3. 配置跨域:允许所有域名(生产环境需限制)
+ registry.addHandler(dockWebSocketHandler, "/ws/dock/**")
+ .addInterceptors(new DockHandshakeInterceptor())
+ .setAllowedOrigins("*");
+
}
-}
\ No newline at end of file
+}
--
Gitblit v1.9.3