回覆列表
  • 1 # 程式猿開發日記

    一般有三種方式,第一種最快最簡單的就是使用註解,第二種是使用Filter,第三種是是配置使用CorsFilter和CorsConfiguration方法。

    註解

    在controller層,增加註解@CrossOrigin,這種方式要求我們每一個controller都需要定義該註解

    Filter

    過濾器使用response,透過設定響應體完成跨域

  • 2 # 大劉哥聊技術

    一、什麼是跨域請求?

    跨域請求,就是說瀏覽器在執行指令碼檔案的ajax請求時,指令碼檔案所在的服務地址和請求的服務地址不一樣。說白了就是ip、網路協議、埠都一樣的時候,就是同一個域,否則就是跨域。這是由於Netscape提出一個著名的安全策略——同源策略造成的,這是瀏覽器對JavaScript施加的安全限制。是防止網路的指令碼惡意攻擊伺服器的一種措施。

    二、SpringBoot工程如何解決跨域問題?

    那麼如何在SpringBoot中處理跨域問題呢?方法有很多,這裡著重講一種——利用@Configuration配置跨域。

    程式碼實現如下:

    /**

    * 實現基本的跨域請求

    */

    @Configuration

    public class CorsConfig {

    private CorsConfiguration buildConfig() {

    CorsConfiguration corsConfiguration = new CorsConfiguration();

    corsConfiguration.addAllowedOrigin("*"); // 允許任何域名使用

    corsConfiguration.addAllowedHeader("*"); // 允許任何頭

    corsConfiguration.addAllowedMethod("*"); // 允許任何方法(post、get等)

    return corsConfiguration;

    }

    @Bean

    public CorsFilter corsFilter() {

    UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();

    source.registerCorsConfiguration("/**", buildConfig()); // 對介面配置跨域設定

    return new CorsFilter(source);

    }

    }

  • 中秋節和大豐收的關聯?
  • 頭伏蘿蔔,二伏菜,三伏來了種蕎麥。為什麼現在農民種蕎麥的越來越少了?