Sfoglia il codice sorgente

增加跨域名设置

zhouhao 7 anni fa
parent
commit
e727f1fe60

+ 33 - 0
hsweb-authorization/hsweb-authorization-basic/src/main/java/org/hswebframework/web/authorization/basic/configuration/CorsAutoConfiguration.java

@@ -0,0 +1,33 @@
+package org.hswebframework.web.authorization.basic.configuration;
+
+import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.web.cors.CorsConfiguration;
+import org.springframework.web.cors.UrlBasedCorsConfigurationSource;
+import org.springframework.web.filter.CorsFilter;
+
+/**
+ * 跨域设置
+ *
+ * @author zhouhao
+ * @since 1.0
+ */
+@Configuration
+@ConditionalOnProperty(prefix = "hsweb.web.cors", name = "enabled", havingValue = "true")
+public class CorsAutoConfiguration {
+
+    @ConfigurationProperties(prefix = "hsweb.web.cors")
+    @Bean
+    public CorsConfiguration corsConfiguration() {
+        return new CorsConfiguration();
+    }
+
+    @Bean
+    public CorsFilter corsFilter(CorsConfiguration corsConfiguration) {
+        UrlBasedCorsConfigurationSource corsConfigurationSource = new UrlBasedCorsConfigurationSource();
+        corsConfigurationSource.registerCorsConfiguration("/**", corsConfiguration);
+        return new CorsFilter(corsConfigurationSource);
+    }
+}