浅析php中jsonp的跨域实例


Posted in PHP onJune 21, 2013

我们现在www.test.com这个域名下面有这么个html文件testjsonp.html:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml" >
 <head>
     <title>Untitled Page</title>
      <script type="text/javascript" src="jquery-1.7.2.min.js"></script>
      <script type="text/javascript">
     jQuery(document).ready(function(){ 
        $.ajax({
             type: "GET",
             async: false,
             //url: "http://test/jsonp.php",
             url:"http://mytaobao.com/jsonp.php",
             dataType: "jsonp",
             jsonp: "callback",//传递给请求处理程序或页面的,用以获得jsonp回调函数名的参数名(一般默认为:callback)
             jsonpCallback:"flightHandler",//自定义的jsonp回调函数名称,默认为jQuery自动生成的随机函数名,也可以写"?",jQuery会自动为你处理数据
             success: function(json){
                 alert('您查询到航班信息:票价: ' + json.price + ' 元,余票: ' + json.tickets + ' 张。回调函数名为: '+json.func);
             },
             error: function(){
                 alert("fail");
             }
         });
     });
     </script>
     </head>
  <body>
  </body>
 </html>

注意,要真正运行上面的代码可能需要jquery的文件,你可以将<script type="text/javascript" src="jquery-1.7.2.min.js"></script>改为你目录中jquery的文件路径:
如:<script type="text/javascript" src="js/jquery.js"></script>
然后,你可以再找个另外一个域名的web目录,将文件jsonp.php:
<?php
$callback = $_GET["callback"];
$a = array(
 'code'=>'CA1998',
    'price'=>'6000',
    'tickets'=>20,
    'func'=>$callback,
);
$result = json_encode($a);
echo "flightHandler($result)";
exit;

放到这个目录下面去。这样就可以测试了。
直接在浏览器访问testjsonp.html.就可以看到效果了。
PHP 相关文章推荐
PHP5 字符串处理函数大全
Mar 23 PHP
php文本转图片自动换行的方法
Mar 13 PHP
destoon实现VIP排名一直在前面排序的方法
Aug 21 PHP
PHP调用Linux命令权限不足问题解决方法
Feb 07 PHP
php实现俄罗斯乘法实例
Mar 07 PHP
PHP实现将textarea的值根据回车换行拆分至数组
Jun 10 PHP
WordPress开发中短代码的实现及相关函数使用技巧
Jan 05 PHP
PHP基于单例模式实现的mysql类
Jan 09 PHP
常用PHP封装分页工具类
Jan 14 PHP
PHP实现防盗链的方法分析
Jul 25 PHP
php微信开发之关键词回复功能
Jun 13 PHP
php+laravel 扫码二维码签到功能
May 15 PHP
解析php中array_merge与array+array的区别
Jun 21 #PHP
邮箱正则表达式实现代码(针对php)
Jun 21 #PHP
关于查看MSSQL 数据库 用户每个表 占用的空间大小
Jun 21 #PHP
php输出echo、print、print_r、printf、sprintf、var_dump的区别比较
Jun 21 #PHP
Function eregi is deprecated (解决方法)
Jun 21 #PHP
解析php中获取url与物理路径的总结
Jun 21 #PHP
解析php函数method_exists()与is_callable()的区别
Jun 21 #PHP
You might like
简单的php 验证图片生成函数
2009/05/21 PHP
Windows下部署Apache+PHP+MySQL运行环境实战
2012/08/31 PHP
PHP程序漏洞产生的原因分析与防范方法说明
2014/03/06 PHP
PHP浮点比较大小的方法
2016/02/14 PHP
PHP编程实现计算抽奖概率算法完整实例
2017/08/09 PHP
PHP经典设计模式之依赖注入定义与用法详解
2019/05/21 PHP
PHP保留两位小数的几种方法
2019/07/24 PHP
php写入mysql中文乱码的实例解决方法
2019/09/17 PHP
IE和Mozilla的兼容性汇总event
2007/08/12 Javascript
jQuery scroll事件实现监控滚动条分页示例
2014/04/04 Javascript
移动端JQ插件hammer使用详解
2015/07/03 Javascript
用js实现放大镜的效果的简单实例
2016/05/23 Javascript
JS定时器使用,定时定点,固定时刻,循环执行详解
2016/05/31 Javascript
javascript中数组和字符串的方法对比
2016/07/20 Javascript
nodejs之koa2请求示例(GET,POST)
2018/08/07 NodeJs
vue返回上一页面时回到原先滚动的位置的方法
2018/12/20 Javascript
微信小程序登录session的使用
2019/03/17 Javascript
Flutter 超实用简单菜单弹出框 PopupMenuButton功能
2019/08/06 Javascript
vue iview 隐藏Table组件里的某一列操作
2020/11/13 Javascript
[08:08]DOTA2-DPC中国联赛2月28日Recap集锦
2021/03/11 DOTA
python线程锁(thread)学习示例
2013/12/04 Python
python日志记录模块实例及改进
2017/02/12 Python
分享一个可以生成各种进制格式IP的小工具实例代码
2017/07/28 Python
使用python实现链表操作
2018/01/26 Python
用python与文件进行交互的方法
2018/03/01 Python
python读取几个G的csv文件方法
2019/01/07 Python
Python散点图与折线图绘制过程解析
2019/11/30 Python
只要五步 就可以用HTML5/CSS3快速制作便签贴特效(图)
2012/06/04 HTML / CSS
阿迪达斯印度官方商城:adidas India
2017/03/26 全球购物
Tuckernuck官网:经典的美国品质服装、鞋子和配饰
2021/01/11 全球购物
营销与策划专业求职信
2014/06/20 职场文书
学习计划书怎么写
2014/09/15 职场文书
国庆节慰问信
2015/02/15 职场文书
婚姻出轨保证书
2015/05/08 职场文书
Pandas 稀疏数据结构的实现
2021/07/25 Python
MySQL串行化隔离级别(间隙锁实现)
2022/06/16 MySQL