关于jsonp的一些笔记
jsonp其实就是为了解决ajax由于同源策略不能跨域访问数据的一种方法 ,为 json with padding,其实就是数据填充,在回调函数中将数据进行填充,动态的将目标地址链接进入页面
如 以下几段代码:
var oScript = document.createElement('script');
oScript.src = 'getData.php?callback=fn1';
document.body.appendChild(oScript);
function fn1(data) {
var oUl1 = document.getElementById('ul1');
var html = '';
for (var i=0; i<data.length; i++) {
html += '<li>'+data[i]+'</li>';
}
oUl1.innerHTML = html;
}
<?php
$t = isset($_GET['t']) ? $_GET['t'] : 'num';
$callback = isset($_GET['callback']) ? $_GET['callback'] : 'fn1';
$arr1 = array('111111','22222222','33333333','4444444','555555555555555555555');
$arr2 = array('aaaaaaaaaaaa','bbbbbbbb','cccccccccccc','ddddddddd','eeeeeeeeeeee');
if ($t == 'num') {
$data = json_encode($arr1);
} else {
$data = json_encode($arr2);
}
echo $callback.'('.$data.');';
将后台数据进行填充到函数中,从而进行数据访问