zoukankan      html  css  js  c++  java
  • 小白的springboot之路(六)、跨域解决方案CORS

    0-前言

      前后端分离、分布式集群,经常都会涉及到跨域访问,而浏览器基于同源策略,正常情况下是不能跨域的,这就需要我们解决跨域访问问题;spring boot解决跨域也比较简单;

    1-CORS跨域解决方案

      spring boot CORS解决跨域比较简单,只需要增加一个CORS的配置类即可;在config下新建一个配置类,代码如下:

    package com.anson.config;
    
    import org.springframework.context.annotation.Configuration;
    import org.springframework.web.servlet.config.annotation.CorsRegistry;
    import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport;
    
    /**
     * @description: CORS跨域配置类
     * @author: anson
     * @Date: 2019/9/5 14:54
     * @version: 1.0
     */
    
    @Configuration
    public class CORSConfiguration extends WebMvcConfigurationSupport
    {
        @Override
        public void addCorsMappings(CorsRegistry registry) {
            registry.addMapping("/**")
                    .allowedMethods("GET", "POST", "DELETE", "PUT","PATCH")
                    .allowedOrigins("*")
                    .maxAge(3600)
                    .allowCredentials(true)
                    .allowedHeaders("*");
            super.addCorsMappings(registry);
        }
    
    
    }
    

      完成,这样就可以跨域访问了,上面的参数简要解释下:

    addMapping:配置可以被跨域的路径,可以任意配置,可以具体到直接请求路径。
    allowedMethods:允许所有的请求方法访问该跨域资源服务器,如:POST、GET、PUT、DELETE等。
    allowedOrigins:允许所有的请求域名访问我们的跨域资源,可以固定单条或者多条内容,如:“http://www.aaa.com”,只有该域名可以访问我们的跨域资源。
    allowedHeaders:允许所有的请求header访问,可以自定义设置任意请求头信息。

    附一篇介绍得详细一点的博文:https://www.cnblogs.com/anxminise/p/9808279.html   

     源码地址:https://github.com/anson-yang/cloverDemo.git

  • 相关阅读:
    移动端工作心得
    小程序初探
    你可能会用到的"奇技赢巧"
    一个知乎日报pwa
    Progressive Web Applications
    Java中的基本数据类型以及装箱、拆箱
    用sql获得指定记录的空段数目和字段名称--实在想不通,这种场景应用在哪
    putIfAbsent,一个字段为空的话,将该字段设置为指定值
    PO、VO、BO、POJO、DAO、DTO都是什么对象
    Java中字符串连接符(+)和append的区别
  • 原文地址:https://www.cnblogs.com/yanghj/p/11466342.html
Copyright © 2011-2022 走看看