springboot配置跨域的方法是什么
导读:Spring Boot配置跨域的方法有以下几种: 使用注解:在Controller类或者方法上使用@CrossOrigin注解来配置跨域访问。可以通过设置origins属性指定允许访问的域名,通过设置methods属性指定支持的HTTP...
Spring Boot配置跨域的方法有以下几种:
-
使用注解:在Controller类或者方法上使用
@CrossOrigin注解来配置跨域访问。可以通过设置origins属性指定允许访问的域名,通过设置methods属性指定支持的HTTP方法,通过设置maxAge属性指定响应的最大生存时间(单位为秒)。@RestController @RequestMapping("/api") @CrossOrigin(origins = "http://example.com", methods = { RequestMethod.GET, RequestMethod.POST} , maxAge = 3600) public class MyController { // ... } -
使用WebMvcConfigurer:通过实现
WebMvcConfigurer接口,重写addCorsMappings方法来配置全局的跨域访问。可以通过调用addMapping方法指定允许访问的路径,通过调用allowedOrigins方法指定允许访问的域名,通过调用allowedMethods方法指定支持的HTTP方法,通过调用maxAge方法指定响应的最大生存时间(单位为秒)。@Configuration public class CorsConfig implements WebMvcConfigurer { @Override public void addCorsMappings(CorsRegistry registry) { registry.addMapping("/api/**") .allowedOrigins("http://example.com") .allowedMethods("GET", "POST") .maxAge(3600); } } -
使用Filter:通过自定义一个
Filter来处理跨域请求,设置响应的Access-Control-Allow-Origin、Access-Control-Allow-Methods和Access-Control-Max-Age响应头。@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", "http://example.com"); response.setHeader("Access-Control-Allow-Methods", "GET, POST"); response.setHeader("Access-Control-Max-Age", "3600"); chain.doFilter(req, res); } }
以上是Spring Boot配置跨域的几种方法,根据实际需求选择适合的方法进行配置。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: springboot配置跨域的方法是什么
本文地址: https://pptw.com/jishu/574826.html
