在Spring Boot中允许跨域请求,可以通过以下几种方式来设置:
- 使用@CrossOrigin注解:在Controller类或方法上使用@CrossOrigin注解来允许跨域请求。可以指定允许的域名、允许的请求方法等。示例代码如下:
@RestController @CrossOrigin(origins = "http://localhost:8080") public class MyController { @GetMapping("/data") public String getData() { // ... } }
- 配置CorsFilter:在Spring Boot中创建一个CorsFilter来设置允许跨域请求。可以在配置类中添加以下代码:
@Configuration public class CorsConfig { @Bean public CorsFilter corsFilter() { CorsConfiguration config = new CorsConfiguration(); config.addAllowedOrigin("http://localhost:8080"); config.addAllowedMethod("*"); config.addAllowedHeader("*"); UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource(); source.registerCorsConfiguration("/**", config); return new CorsFilter(source); } }
- 使用WebMvcConfigurer配置:可以通过实现WebMvcConfigurer接口来添加全局的跨域配置。示例代码如下:
@Configuration public class CorsConfig implements WebMvcConfigurer { @Override public void addCorsMappings(CorsRegistry registry) { registry.addMapping("/**") .allowedOrigins("http://localhost:8080") .allowedMethods("*") .allowedHeaders("*"); } }
以上这些方法都可以实现跨域请求的设置,根据实际需求选择其中一种方式即可。