小白的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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM