src/main/java/com/weiwojc/config/CorsConfig.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/weiwojc/config/SecurityConfig.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/weiwojc/config/CorsConfig.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,33 @@ package com.weiwojc.config; 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; @Configuration public class CorsConfig { @Bean public CorsFilter corsFilter() { UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource(); CorsConfiguration config = new CorsConfiguration(); // å 许跨åçæºï¼è¿é设置为å è®¸æææº config.addAllowedOriginPattern("*"); // å 许跨åç请æ±å¤´ config.addAllowedHeader("*"); // å 许跨åçè¯·æ±æ¹æ³ config.addAllowedMethod("*"); // å 许æºå¸¦è®¤è¯ä¿¡æ¯ï¼tokenï¼ config.setAllowCredentials(true); // æ´é²ååºå¤´ config.addExposedHeader("*"); // 设置跨å请æ±çæææï¼åä½ä¸ºç§ config.setMaxAge(3600L); source.registerCorsConfiguration("/**", config); return new CorsFilter(source); } } src/main/java/com/weiwojc/config/SecurityConfig.java
@@ -12,6 +12,9 @@ import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.security.web.SecurityFilterChain; import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter; import org.springframework.web.cors.CorsConfiguration; import org.springframework.web.cors.CorsConfigurationSource; import org.springframework.web.cors.UrlBasedCorsConfigurationSource; @Configuration @EnableWebSecurity @@ -23,6 +26,7 @@ @Bean public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception { http .cors(cors -> cors.configurationSource(corsConfigurationSource())) .csrf(AbstractHttpConfigurer::disable) .sessionManagement(session -> session .sessionCreationPolicy(SessionCreationPolicy.STATELESS)) @@ -35,6 +39,21 @@ } @Bean public CorsConfigurationSource corsConfigurationSource() { CorsConfiguration configuration = new CorsConfiguration(); configuration.addAllowedOriginPattern("*"); configuration.addAllowedMethod("*"); configuration.addAllowedHeader("*"); configuration.setAllowCredentials(true); configuration.addExposedHeader("*"); configuration.setMaxAge(3600L); UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource(); source.registerCorsConfiguration("/**", configuration); return source; } @Bean public PasswordEncoder passwordEncoder() { return new BCryptPasswordEncoder(); }