• [Spring Boot] 解决跨域请求问题


     一.摘要

      一般前端后端分离开发的项目经常出现该类问题,浏览器均默认开启了同源策略,它指Ajax请求所在的页面和被请求的页面在协议、域名、端口均相同才能被访问,否则就会报错。下面是其中一种解决方式;其他的方法参考:https://www.cnblogs.com/sueyyyy/p/10129575.html

    二.解决方式

    1. 添加配置类:

    全局跨域配置,适用于接口多的场景

     1 //解决跨域访问问题
     2 @Configuration
     3 public class CorsConfig implements WebMvcConfigurer {
     4     @Bean
     5     public WebMvcConfigurer corsConfigurer()
     6     {
     7         return new WebMvcConfigurer() {
     8             @Override
     9             public void addCorsMappings(CorsRegistry registry) {
    10                 registry.addMapping("/**").
    11                         allowedOrigins("*").     //允许跨域的域名,可以用*表示允许任何域名使用
    12                         allowedMethods("*").                            //允许任何方法(post、get等)
    13                         allowedHeaders("*").                            //允许任何请求头
    14                         allowCredentials(true).                         //带上cookie信息
    15                         exposedHeaders(HttpHeaders.SET_COOKIE).maxAge(3600L); //maxAge(3600)表明在3600秒内,不需要再发送预检验请求,可以缓存该结果
    16             }
    17         };
    18     }
    19 }

     2. 添加 @CrossOrigin 注解

    作用于类或者方法上,适用于接口很少的场景

  • 相关阅读:
    void及void指针含义的深刻解析
    jbpm入门样例
    给字符数组赋值的方法
    linux tar.gz zip 解压缩 压缩命令
    android 文件上传
    职员有薪水了
    sublime配置全攻略
    [置顶] WPF数据修改demo
    Java实现快速排序
    Java实现快速排序
  • 原文地址:https://www.cnblogs.com/chasemeng/p/13427430.html
Copyright © 2020-2023  润新知