在JavaScript中用于实现跨域操作

要实现跨领域,我们应该从基础知识开始。

什么是域

简而言之,计算机网络中的安全边界是一个域。JS的跨领域是实现不同领域之间的信息获取。只要其中一个端口、协议和主机名不同,即不同的域,跨域技术就会被用来访问数据。

使用JSONP实现跨域。主要出于安全策略考虑,在JS中直接使用XHR访问不同域上的数据是不可行的。允许在浏览器页面上引入具有不同域的JS脚本,JSONP只是利用这个特性来实现跨域操作。

举个简单的例子,HTML页面中的脚本需要使用Ajax来获取不同领域的JSON数据。如果要访问的域是http://kuayu.com/data.php,,HTML中的脚本可以这样编写。

callback是一个参数名称,已经和通常的数量一起使用,也可以根据自己的习惯使用其他名称。为了减少不必要的事故,建议使用通常的用法。这个定制的DO or函数是跨域获得的JSON数据,被用作DO or的参数,从而实现跨域数据采集,并在采集后的JSON日期运行。

说白了,需要获取数据URL地址的脚本被插入页面,需要处理的函数被附加在URL的末尾。这个方法在jQuery中封装成一个更简单的函数,并且$。get JSON方法将自动确定它是否是跨域的,如果不是,它将调用普通的Ajax方法。跨域以异步加载JS文件的形式调用JSONP的回调函数。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181027A1011900?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券