js如何实现跨域访问
2015-01-23 19:05
169 查看
js为了安全不允许跨域访问,但是有时我们需要跨域访问页面,那么如何实现跨域访问呢?
在泽卡斯的《JavaScript高级程序设计》一书中,提到几种跨域访问的方法,例如AJAX把open()函数的url写为绝对路径,图像ping,泽卡斯还提到一种跨域访问技术,JSONP技术,这种技术其实原理是动态脚本,也就是说,可以使用动态脚本实现跨域访问,具体方法是:
假设当前域为 192.168.197.1,跨域请求192.168.197.241:
function handleCallback(data){
//回调处理
}
var script=document.createElement("script");
script.src="http://192.168.197.2/test.js";
document.body.insertBefore(script,document.body.firstChild);
/**********************************************************************/
test.js 为192.168.197.241域中的js文件:
var data={
name:"vuturn"
}
handleResonse(data);
JSONP有两部分构成,回调函数和数据,这里的回调函数handleResponse(),当把跨域的脚本下载完成后,脚本立即执行,并调用handleResponse();
在泽卡斯的《JavaScript高级程序设计》一书中,提到几种跨域访问的方法,例如AJAX把open()函数的url写为绝对路径,图像ping,泽卡斯还提到一种跨域访问技术,JSONP技术,这种技术其实原理是动态脚本,也就是说,可以使用动态脚本实现跨域访问,具体方法是:
假设当前域为 192.168.197.1,跨域请求192.168.197.241:
function handleCallback(data){
//回调处理
}
var script=document.createElement("script");
script.src="http://192.168.197.2/test.js";
document.body.insertBefore(script,document.body.firstChild);
/**********************************************************************/
test.js 为192.168.197.241域中的js文件:
var data={
name:"vuturn"
}
handleResonse(data);
JSONP有两部分构成,回调函数和数据,这里的回调函数handleResponse(),当把跨域的脚本下载完成后,脚本立即执行,并调用handleResponse();
相关文章推荐
- html5的postmessage实现js前端跨域访问及调用解决方案
- html5的postmessage实现js前端跨域访问及调用解决方案
- JavaScript如何实现跨域访问(CORS)?
- 如何使用yql实现跨域访问
- 三种方法实现js跨域访问
- js 设置header,实现跨域访问
- 【js跨域】js实现跨域访问的几种方式
- Windows下nodejs通过浏览器如何访问js实现方案
- js 设置header,实现跨域访问
- 如何通过js跨域调用ASP.NET Web API (请问如何实现在javascript中通过http get的方式跨域调用ASP.NET Web API?)
- .NET通过配置文件的方式实现静态js文件跨域访问
- 三种方法实现js跨域访问
- js实现跨域访问的三种方法
- 如何使用Fiddler实现跨域访问(把自己做的静态HTML页面域名变成api.bing.com)
- YUI实现JS跨域访问文件、字符串、js
- 三种方法实现js跨域访问
- 三种方法实现js跨域访问
- 三种方法实现js跨域访问
- js判断请求的url是否可访问,支持跨域判断的实现方法
- js判断请求的url是否可访问,支持跨域判断的实现方法