三种访问非同源数据策略

什么是同源政策?
最初同源政策是指A网站在客户端设置的cookie,B网站是不能访问的
什么是同源
同源是指两个页面拥有相同的协议,端口号,域名
为什么会出现同源?
保证用户数据安全,最初同源政策是指A网站在客户端设置的cookie,
B网站是不能访问的,随着互联网发展,同源请求越来越严格
有一项规定就是不能向非同源地址发送Ajax请求,请求就会报错

解决策略

1.使用Jsonp解决同源限制
思路
用script标签不受服务器同源政策限制,服务器返回函数调用代码(字符串),当客户端加载完成响应内容,响应内容会被当做js代码执行(因为写
在script标签中),客户端要提前准备好函数的定义,注意:src 必须返回js
类型的代码。具体过程记录在下面有道云笔记中

http://note.youdao.com/noteshare?id=6a949c3b47654ef3baa713ac29b8c69f&sub=57276FA465B347DAB28B023133B2DAFE

2.CORS跨域资源共享解决同源限制
不同于jsonp绕过服务器同源政策,这个是允许跨域访问资源请求客户端根
据服务器是否有响应头内容来判断服务器端是否同意这次请求(浏览器自
动完成) Access…可以理解为白名单,这个方法的实现需要在服务器端
(路由)设置两个响应头

在这里插入图片描述

http://note.youdao.com/noteshare?id=34bd6b8054d8e59e9bcf77e913c90de0&sub=C360C6252758475881B684279B914C54

3.利用服务器没有同源限制
引入request模块可以实现两个服务器之间的数据请求,我们通过一号服务
器(3000)访问2号服务器(3001)只有一号客户端通过/server访问1号服
务器时才会执行该请求处理函数。
其中该request请求返回三个参数,一个err,一个response(是一个比较复
杂的数据集合,服务器端的响应信息,我们暂不关心),一个body是请求成
功的返回信息(2号服务器返回的数据)

在这里插入图片描述

http://note.youdao.com/noteshare?id=34bd6b8054d8e59e9bcf77e913c90de0&sub=C360C6252758475881B684279B914C54
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值