跨域的一点小总结。options请求出现的原因。解决方法


在前端开发过程中,尤其是前后端分离的开发(现在应该大部分都是了吧)。我们经常要遇见跨域的问题。我们之前的解决方案简单粗暴好用,直接chrome跨域。后边附上链接。前几天有时间图然心血来潮,想试试别的方法。正好查阅了一些资料。后边给大家附上链接按照顺序看看。相信大家对跨域问题会有一个系统的认识。

跨域,指的是浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对JavaScript施加的安全限制。

所谓同源是指,域名,协议,端口均相同,简单的讲加入你的前端页面是挂在某个站点下的,它有属于自己的协议,域名,端口,加入请求的资源(比如接口),与它在协议,域名,端口号上有一个不同。就要实现跨域。才能请求获得相应的资源。

既然浏览器有同源安全策略,我们就有各种方法实现跨域。那么都有哪些跨域方法呢?

同源讲解:阮大牛:浏览器同源政策及其规避方法 - 阮一峰的网络日志

http://www.ruanyifeng.com/blog/2016/04/same-origin-policy.html

阮一峰大牛CORS 跨域——CORS详解

 https://zhuanlan.zhihu.com/p/24411090

MDN HTTP access control (CORS)

 https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS

推荐大家再看看MDN上的讲解,特别是那张图。特别好。

解释了什么情况下回出现options请求,为什么会出现,设置了cors之后还会出现的原因。还需要设置什么。你有可能会看的很晕。没能认真看完或看懂的。下面说一下简单粗暴的方式。chrome跨域。

最新版chrome谷歌浏览器Ajax跨域调试问题 - 丁汤汤_最前端 - CSDN博客

http://blog.csdn.net/u010035608/article/details/51158904

直接设置就可以了。之后你就会发现post请求出现options请求不成功的情况,就不存在了。

另外还有一种跨域方案叫csp跨域了解不是很多。大家有兴趣可以去了解了解。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值