【剑指offer】同源策略、跨域问题

【网络问题】同源策略、跨域问题

1、什么是源?

源就是协议,域名,端口
例如:http://www.biadu.com:80 其中协议为http协议,域名为www.biadu.com,端口号为:80
同源指的就是两个url的源是相同的,即协议,域名,端口相同

2、同源策略

同源策略(Same origin policy)是一种约定,它是浏览器最核心也最基本的安全功能。即请求其他资源时,浏览器会检测当前源和请求资源的源是否相同,只有相同浏览器才会对请求的资源进行读取。

不受同源策略影响的资源请求方式:

  • scrpt 标签请求 js 文件
  • link 标签请求 css 文件
  • 标签中 src 属性请求资源
  • 大部分标签中 href 属性请求资源

3、跨域问题

1)什么是跨域?
跨域就是请求的资源的源和当前的源是不相同的,则协议,域名,端口有任意一个不相同就是跨域
2)什么是跨域问题?
跨域问题就是:由于浏览器的同源策略,当发生跨域请求时,浏览器不会对跨域请求的资源进行读写

4、跨域问题的解决方法

后端配合我们跨域

1)JSONP(Jsonp with Padding)

利用script标签进行资源请求不会受同源策略的限制,但script标签请求的资源会当成js代码来执行

2)后端设置Access-Control-Allow-Origin属性支持跨域
后端设置响应头的Access-Control-Allow-Origin字段,添加允许跨域的域名

后端不配合我们跨域

3)iframe(只能显示不能控制)

4)后端代理

通过自己的后端去请求资源,再发送给前端

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值