标签:class blog code java http ext
关于jsonp的一个实例,其实自己也不是很了解,今天下午稍微研究了一下;
简单来说,jsonp就是为了两个不同网站之间数据传递而产生的,主要用于js脚本,因为浏览器本身是禁止跨域访问的;
本机实例:
http://127.0.0.1:80/index.php
<script src="http://cdn.staticfile.org/jquery/1.11.1/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
jQuery.getJSON("http://127.0.0.1:81/index2.php?symbol=IBM&callback=?",
function(data) {
eval(data.symbol);
name();
});
});
</script>
这是客户端的脚本,利用jquery,我现在需要在服务端脚本(php)脚本中输出一个名为name的函数,供客户端使用
http://127.0.0.1:80/index2.php
<?php
$jsonData = json_encode(array(‘symbol‘=>‘function name(){alert("My name is Libin")};‘));
echo $_GET[‘callback‘] . ‘(‘ . $jsonData . ‘);‘;
?>
简单来说。就是客户端通过jquery内置的getJSON方法来调取跨域的服务器端的脚本,而服务器端的脚本输出一段json文本(可以是数组,函数均可,本实例就是输出一个函数),
但是记住一定要以json格式来输出;然后客户端接收后进行执行即可(如果是函数文本的话,可以先eval一下):;
标签:class blog code java http ext
原文地址:http://www.cnblogs.com/shibazi/p/3799796.html