Prechádzať zdrojové kódy

Merge remote-tracking branch 'origin/master'

zouxuan 4 rokov pred
rodič
commit
8081753df9

+ 3 - 2
mec-student/src/main/java/com/ym/mec/student/config/WebSocketConfig.java

@@ -25,8 +25,9 @@ public class WebSocketConfig implements WebSocketConfigurer {
 
     @Override
     public void registerWebSocketHandlers(WebSocketHandlerRegistry webSocketHandlerRegistry) {
-        webSocketHandlerRegistry.addHandler(webSocketHandler, "/ws")
-                .addInterceptors(webSocketHandshakeInterceptor);
+        webSocketHandlerRegistry.addHandler(webSocketHandler, "/audioEvaluate")
+                .addInterceptors(webSocketHandshakeInterceptor)
+                .setAllowedOrigins("*");
     }
 
     @Bean

+ 3 - 2
mec-teacher/src/main/java/com/ym/mec/teacher/config/WebSocketConfig.java

@@ -25,8 +25,9 @@ public class WebSocketConfig implements WebSocketConfigurer {
 
     @Override
     public void registerWebSocketHandlers(WebSocketHandlerRegistry webSocketHandlerRegistry) {
-        webSocketHandlerRegistry.addHandler(webSocketHandler, "/ws")
-                .addInterceptors(webSocketHandshakeInterceptor);
+        webSocketHandlerRegistry.addHandler(webSocketHandler, "/audioEvaluate", "/ws")
+                .addInterceptors(webSocketHandshakeInterceptor)
+                .setAllowedOrigins("*");
     }
 
     @Bean

+ 41 - 0
mec-web/src/main/java/com/ym/mec/web/config/WebSocketConfig.java

@@ -0,0 +1,41 @@
+package com.ym.mec.web.config;
+
+import com.ym.mec.biz.handler.WebSocketHandler;
+import com.ym.mec.web.interceptor.WebSocketHandshakeInterceptor;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.web.socket.config.annotation.EnableWebSocket;
+import org.springframework.web.socket.config.annotation.WebSocketConfigurer;
+import org.springframework.web.socket.config.annotation.WebSocketHandlerRegistry;
+import org.springframework.web.socket.server.standard.ServletServerContainerFactoryBean;
+
+/**
+ * @Author Joburgess
+ * @Date 2021/6/8 0008
+ */
+@Configuration
+@EnableWebSocket
+public class WebSocketConfig implements WebSocketConfigurer {
+
+    @Autowired
+    private WebSocketHandler webSocketHandler;
+    @Autowired
+    private WebSocketHandshakeInterceptor webSocketHandshakeInterceptor;
+
+    @Override
+    public void registerWebSocketHandlers(WebSocketHandlerRegistry webSocketHandlerRegistry) {
+        webSocketHandlerRegistry.addHandler(webSocketHandler, "/audioEvaluate")
+                .addInterceptors(webSocketHandshakeInterceptor)
+                .setAllowedOrigins("*");
+    }
+
+    @Bean
+    public ServletServerContainerFactoryBean createWebSocketContainer() {
+        ServletServerContainerFactoryBean container = new ServletServerContainerFactoryBean();
+        container.setMaxTextMessageBufferSize(8192*4);
+        container.setMaxBinaryMessageBufferSize(8192*4);
+        return container;
+    }
+
+}

+ 28 - 0
mec-web/src/main/java/com/ym/mec/web/interceptor/WebSocketHandshakeInterceptor.java

@@ -0,0 +1,28 @@
+package com.ym.mec.web.interceptor;
+
+import org.springframework.http.server.ServerHttpRequest;
+import org.springframework.http.server.ServerHttpResponse;
+import org.springframework.stereotype.Component;
+import org.springframework.web.socket.WebSocketHandler;
+import org.springframework.web.socket.server.HandshakeInterceptor;
+
+import java.util.Map;
+
+/**
+ * @Author Joburgess
+ * @Date 2021/6/9 0009
+ */
+@Component
+public class WebSocketHandshakeInterceptor implements HandshakeInterceptor {
+
+    @Override
+    public boolean beforeHandshake(ServerHttpRequest serverHttpRequest, ServerHttpResponse serverHttpResponse, WebSocketHandler webSocketHandler, Map<String, Object> map) throws Exception {
+        return true;
+    }
+
+    @Override
+    public void afterHandshake(ServerHttpRequest serverHttpRequest, ServerHttpResponse serverHttpResponse, WebSocketHandler webSocketHandler, Exception e) {
+
+    }
+
+}