jsonp 之前知道是用来解决ajax跨域的问题,但是其本质的原理,还是不清楚。
所以看了一下。
js的script 的src里面的连接是可以跨域的,所以可以通过她来实现跨域资源获取。
但是也需要后端的支持
让服务器端返回,回调avascript函数,参数为要回发的数据。
a.com/index.hrml页面内容
function addScript(src){
var script = document.createElement('script');
script.setAttribute('type','text/javascript');
script.src= src;
document.body.appendChild(script);
}
addScript('b.cn/a.php?callback=exampleName');
function exampleName(data){
alert(data);//从后台返回来的数据
}
后台支持
服务器获取到callback 的回调函数名字,会将同名字的函数名字返回到来,并且带着数据。