Spring前后端跨域请求设置代码实例

时间:2021-10-09 04:56:16

前后端项目分离,跨域请求时,后端的两种配置方式:

1.配置类:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
package com.helq3.config;
 
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.cors.CorsConfiguration;
import org.springframework.web.cors.UrlBasedCorsConfigurationSource;
import org.springframework.web.filter.CorsFilter;
 
/**
 * 跨域全局配置
 */
@Configuration
public class CorsConfig {
  private CorsConfiguration buildConfig(){
 
    CorsConfiguration configuration = new CorsConfiguration();
    //设置属性
    //允许跨域请求的地址,*表示所有
    configuration.addAllowedOrigin("*");
    //配置跨域的请求头
    configuration.addAllowedHeader("*");
    //配置跨域的请求方法
    configuration.addAllowedMethod("*");
    //表示跨域请求的时候使用的是否是同一个session
    configuration.setAllowCredentials(true);
    return configuration;
  }
  @Bean
  public CorsFilter corsFilter(){
    UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
    source.registerCorsConfiguration("/**",buildConfig());
    return new CorsFilter(source);
  }
}

2.Controller上面配置

@CrossOrigin(origins = "*",allowedHeaders = "*",methods = {},allowCredentials = "true")
public class TestController {
}

3.Ant Design Vue 中,在src/util/request.js中增加

axios.defaults.withCredentials = true

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:https://www.cnblogs.com/helq/p/13336870.html