同源策略与跨域问题

浏览器为保护用户的信息,采用同源策略。

同源策略:

协议主机端口号都一样才是同源。

http://   www.bilibili.com  :8080

当两个URL必须上述三条件都一样才是同源,可以交互。否则,就是跨域。

跨域问题

当两个URL存在不一样时,发送AJAX请求时出现了访问问题。

实现方式

1.通过JSONP

原理就是利用JS天然支持跨域,不受同源策略限制,可以通过script实现跨域

(HTML5里script标签默认的type属性是text/javascript, 定义了这个类型后,请求的内容会被浏览器以JS代码执行)

局限:只支持get请求

2.通过CORS

浏览器在进行跨域请求时,在请求头中添加头部origin:协议+主机+端口(表明自己的协议、主机和端口号)

服务器接收到请求并看到origin头部时,若需要能够访问,添加Access-Control-Allow-Origin到响应里。

浏览器看到服务器传回的头部就知道是否可以进行跨域请求了。

3.设置反向代理

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值