springboot跨域配置的方法是什么

avatar
作者
筋斗云
阅读量:0

在Spring Boot中配置跨域请求可以通过以下几种方式:

  1. 使用全局配置类: 创建一个全局配置类继承WebMvcConfigurerAdapter,并重写addCorsMappings方法,定义允许跨域的路径和请求方法。例如:
@Configuration public class CorsConfig extends WebMvcConfigurerAdapter {      @Override     public void addCorsMappings(CorsRegistry registry) {         registry.addMapping("/**")                 .allowedOrigins("*")                 .allowedMethods("GET", "POST", "PUT", "DELETE")                 .allowedHeaders("*")                 .allowCredentials(true);     } } 
  1. 使用注解: 在Controller类或方法上添加@CrossOrigin注解来配置跨域请求。例如:
@RestController @CrossOrigin(origins = "*", maxAge = 3600) public class MyController {      // ... } 

注解中的origins属性指定允许跨域请求的来源,可以使用通配符*表示允许所有来源。maxAge属性指定预检请求的有效期,单位为秒。

  1. 使用Filter: 创建一个实现javax.servlet.Filter接口的Filter类,在doFilter方法中添加跨域请求的配置。例如:
@Component public class CorsFilter implements Filter {      @Override     public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain)             throws IOException, ServletException {         HttpServletResponse response = (HttpServletResponse) res;         response.setHeader("Access-Control-Allow-Origin", "*");         response.setHeader("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE");         response.setHeader("Access-Control-Allow-Headers", "*");         response.setHeader("Access-Control-Max-Age", "3600");         response.setHeader("Access-Control-Allow-Credentials","true");         chain.doFilter(req, res);     }      // ... } 

以上是几种常用的Spring Boot跨域配置方法,根据具体的需求选择适合的方式来配置跨域请求。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!