0
Làm sao Enabel CROS cho tất cả request vào trong spring boot
Chào mọi người,
Mình bị lỗi khi call api từ reactjs sang Java Spring Boot thì bị lỗi CROS, mn có cách nào mở cho tất cả request không ạ?
Mình cảm ơn!
Add a comment
2 ANSWERS
+4
Bác có thể tham khảo phần config CorsConfiguration này ạ
@Bean
public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
AuthenticationManagerBuilder authenticationManagerBuilder = http.getSharedObject(AuthenticationManagerBuilder.class);
authenticationManagerBuilder.userDetailsService(myUserDetailsService).passwordEncoder(passwordEncoder());
AuthenticationManager authenticationManager = authenticationManagerBuilder.build();
http.cors().configurationSource(request -> corsConfiguration())
.and().csrf().disable()
.authorizeRequests()
.antMatchers("/api/auth/**").permitAll()
.antMatchers("/api/users/**").authenticated()
.and().authenticationManager(authenticationManager)
.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS);
return http.build();
}
CorsConfiguration corsConfiguration() {
CorsConfiguration corsConfiguration = new CorsConfiguration();
corsConfiguration.applyPermitDefaultValues();
corsConfiguration.addAllowedMethod(HttpMethod.PATCH);
corsConfiguration.addAllowedMethod(HttpMethod.PUT);
corsConfiguration.addAllowedMethod(HttpMethod.DELETE);
return corsConfiguration;
}
This comment has been deleted
+1
@CrossOrigin bạn có thể thử dùng annotation này :l tuy nhiên theo lỗi bảo mật của cwe thì ko nên cấu hình là * nhé. Hoặc có thể disable trong security config
Bạn disable trong security config như nào ạ
@huytvomi như code bạn ở trên ý ạ