Ajax调用springboot接口,Springboot解决ajax+自定义headers的跨域请求问题.pdf
Springboot解解决决ajax+自自定定义义headers的的跨跨域域请请求求问问题题
1、、什什么么是是跨跨域域
由于浏览器同源策略 (同源策略,它是由Netscape提出的一 著名的安全策略。现在所有支持JavaScript 的浏览器都会使用这
策略。所谓同源是指,域名,协议,端口相同。),凡是发送请求url的协议、域名、端口三者之间任意一与当前页面地址不同
即为跨域。
具体可以查看下表:
2、、springboot如如何何解解决决跨跨域域问问题题
1.普普通通跨跨域域请请求求解解决决方方案案::
①请求接口添加注解@CrossOrigin(origins = "http:// 127. . .1:8 2 ", maxA ge = 36 )
说明:origins = "http:// 127. . .1:8 2 " origins值为当前请求该接口的域
②通用配置 (所有接口都允许跨域请求)
新增一 configration类 或 在A pplication中加入CorsFilter和CorsConfiguration方法
@Configuration
public class CorsConfig {
private CorsConfiguration buildConfig() {
CorsConfiguration corsConfiguration = new CorsConfiguration();
corsConfiguration.addAllowedOrigin("*"); 1允许任何域名使用
corsConfiguration.addAllowedHeader("*"); 2允许任何头
corsConfiguration.addAllowedMethod("*"); 3允许任何方法 (post、get等)
return corsConfiguration;
}
@Bean
public CorsFilter corsFilter() {
UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
source.registerCorsConfiguration(" **", buildConfig()); 4
return new CorsFilter(source);
}
}
2.ajax自自定定义义headers的的跨跨域域请请求求
$.ajax({
type:"GET",
url:"http: localhost:8766 main currency sginInState",
dataType:"JSON",
data:{
uid:userId
},
beforeSend: function (XMLHttpRequest) {
XMLHttpRequest.setRequestHeader("Authorization", access_token);
},
success:function(res){
console.log(res.code)
}
})
此时请求http://localhost:8766/main/currency/sginInState接口发现OPTIONS http://localhost:8766/main/currency/sginInState
5 错误,普通跨域的解决方案已经无法解决这种问题,为什么会出现OPTIONS请求呢?
原原因因
浏览器会在发送真正请求之前,先发送一 方法为OPTIONS的预检请求 Preflighted requests 这 请求是用来验证本次请求是否
Ajax调用springboot接口,Springboot解决ajax+自定义headers的跨域请求问题.pdf相关推荐
- 自定义原生jsonp跨域请求
由于同源策略,跨域(协议.域名.端口均相同的为同域)之间是不允许请求资源的,但是scrapt标签不收跨域约束,如论是jQuery中的jsonp还是angularjs中的jsonp都是通过script来 ...
- html中jsonp错误,解决jquery中jsonp格式跨域请求报parsererror的错误
在vs中创建一个空的mvc项目,在Controllers文件夹中添加一个控制器CommonController,并在该控制器下添加一个action用于获取服务器时间,代码如下: public Acti ...
- c#分页_使用Kotlin搭配Springboot开发RESTFul接口(二)自定义配置、跨域、分页
前言 上一篇文章请看这里:使用Kotlin搭配Springboot开发RESTFul接口与服务部署 上一篇文章介绍了Kotlin搭配Springboot的开发流程,从搭建项目.ORM.Controll ...
- js跨域调用php接口,php的json格式和js跨域调用的代码
function jsontest() { var json = [{'username':'crystal','userage':'20'},{'username':'candy','userage ...
- Ajax跨域请求以及乱码解决
Ajax跨域请求2种解决方法 1 ) 什么叫跨域请求,协议,域名,端口号,其中一样不同都称跨域; 第一种:使用script标签发送请求; //创建一个script标签; var v_element=d ...
- ajax 跨域请求api_【.NET Core 3.0】框架之十二 || 跨域 与 Proxy
本文有配套视频: https://www.bilibili.com/video/av58096866/?p=8 一.为什么会出现跨域的问题 跨域问题由来已久,主要是来源于浏览器的"同源策略& ...
- Ajax 调用webservice 解决跨域请求和发布到服务器后本地调用成功外网失败的问题...
webservice 代码 1 /// <summary> 2 /// MESService 的摘要说明 3 /// </summary> 4 [WebService(Name ...
- springboot实现ajax跨域请求
有段时间没写文章了.看到有人提问ajax跨域请求的问题. 博主要再次强调,跨域,就是从不同的的IP端口获取数据,比如说,从www.baidu.com获取数据,就叫跨域!那么localhost:8080 ...
- ajax对接接口属性,ajax调用restful接口
ajax调用restful接口 内容精选 换一换 ROMA API提供了API服务能力,通过API服务把后端服务封装成标准RESTful格式API,并开放给其他用户使用.目前支持三种创建服务方式:创建 ...
最新文章
- Unity面试题汇总(第一部分)
- Java眼中的XML--文件读取--2 应用SAX方式解析XML
- 安装好了java7怎么打开,Windows怎么安装JDK1.7 JDK1.7怎么安装图解
- hdu 3172(并查集+hash)
- 机器学习基础-一元线性回归-01
- 设计模式4-创建型模式-Prototype模式
- iOS之Cocoapods安装
- 获取url中带的参数
- 攻防世界——MyDriver2-397
- 关于FTP的两种连接模式
- win10提示“应用程序无法正常启动 0xc0150002”怎么办
- K8s Kubernetes集群部署
- Fast-paced Multiplayer
- RAAT: Relation-Augmented Attention Transformer for Relation Modeling in Document-Level 论文解读
- 蚪侠-远程泛目录[泛域名+泛目录+泛内页]-[代码+汉字]干扰-字体繁简切换-蜘蛛欺骗-主动推送_模板版-V25版
- 雄关漫道真如铁,而今迈步从头越 | 挥别2022,再战2023!
- WaaSMedicAgent是什么程序?又叫Windows更新医生服务
- ModelsimSE使用指南
- 在ensp安装过程中遇到的错误(40 41错误,usg6000v导入时配置文件格式错误)
- java lru_LRU的理解与Java实现