【笔记】SpringBoot跨域响应

前言

SpringBoot跨域响应

JSONP方式

<obj>:响应数据封装的对象

1
2
3
4
5
@RequestMapping("")
public JSONPObject testJSONP(String callback){
JSONPObject jsonpObject = new JSONPObject(callback, <obj>);
return jsonpObject;
}

CORS方式

  • 定义全局配置类,实现WebMvcConfigurer接口

addMapping():定义哪些请求可以进行跨域操作

/*:拦截指定访问路径的所有请求
/**:拦截指定访问路径及其子路径的所有请求

allowedOrigins():允许哪些网站跨域
allowCredentials():请求跨域时是否允许携带Cookie或Session
maxAge():指定允许多长时间内不需要再次拦截,默认为30分钟
allowedMethods():允许请求的类型,默认为GET和HEAD

1
2
3
4
5
6
7
8
9
10
11
@Configuration
public class CORSConfig implements WebMvcConfigurer{
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**")
.allowedOrigins("*")
.allowCredentials(true);
//.maxAge();
//.allowedMethods();
}
}
1
2
3
4
5
6
7
8
9
@Configuration
public class CORSConfig implements WebMvcConfigurer{
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**")
.allowedOriginPatterns("*")
.allowCredentials(true);
}
}

完成