Spring Boot : CROS解决跨域问题(七)

来源:互联网 发布:大学 知乎 编辑:程序博客网 时间:2024/06/01 08:58

目录

  • 目录
  • 官网说明
  • 全局配置
  • 部分配置 CrossOrigin注解

官网说明

官网说明: http://docs.spring.io/spring-boot/docs/1.5.6.RELEASE/reference/htmlsingle/#boot-features-cors

全局配置

全局配置,配置后无须添加其他配置.SpringBoot 1.5.6版本jdk1.7或者1.8都测试没问题.

@Configurationpublic class MyConfiguration {    @Bean    public WebMvcConfigurer corsConfigurer() {        return new WebMvcConfigurerAdapter() {            @Override            public void addCorsMappings(CorsRegistry registry) {                registry.addMapping("/api/**");            }        };    }}

部分配置 @CrossOrigin注解

可选参数:@CrossOrigin(origins = “http://domain2.com“,maxAge = 3600,methods = {RequestMethod.GET, RequestMethod.POST}) 分别是授权地址,时间,和方法.

仅配置方法

    @PostMapping("/demo13")    @ResponseBody    @CrossOrigin    public String demo13() {        System.out.println("demo13 has been request");        return "{\"code\":123,\"msg\":\"success\"}";    }

配置整个类吧@CrossOrigin配置到类上方就可以了.

注意:如果是用@CrossOrigin注解JDK版本必须1.8,1.7版本会再项目启动时报错.
这里写图片描述

本打算接下来写Servlet、过滤器、监听器、拦截器,看到一位帅哥写的非常好,贴出连接自己不写了,偷个懒 - -
Spring Boot Servlet : http://blog.csdn.net/catoop/article/details/50501686
Spring Boot 过滤器、监听器 : http://blog.csdn.net/catoop/article/details/50501688
Spring Boot 拦截器 : http://blog.csdn.net/catoop/article/details/50501696