注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

Copper peas ' Bolg

Keep On Moving...This Is My Life...

 
 
 

日志

 
 

【原】jquery ajax 跨域请求  

2011-07-22 13:16:31|  分类: javascript |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

要点使用jquery中的jsonp,注意:firebug 的xhr中无法查看,但能正确获取值
原理是采用返回值输出js格式,把该js又引入你的页面就能调用到值。
关键代码:
js:

/*
 * 发送请求
 */   
function ajax(ajaxurl,params,type)
{  
 $.ajax({
     url:ajaxurl,         //后台处理程序
     type:'post',         //数据发送方式
     dataType:type,       //接受数据格式
     data:params,         //要传递的数据
     jsonp:"backdata",    //重写回调函数名(可提供跨域)
     success:backmsg      //回传函数(这里是函数名)
   });
 
 //显示加载条
 //ajaxloader.show();
}

/*
 * ajax回传函数
 */
function backmsg(data)

    //隐藏加载条
    //ajaxloader.hide();
 alert("ajax success!");
 alert(data.a);
}

php:

<?php
$jsonp = $_REQUEST['backdata'];   //asdf为客户端传过来的参数,可以自行设定。
$arr=array('a'=>a);
$str = json_encode($arr);
echo $jsonp.'('.$str.')';
?>

 

如果觉得的不安全,你可以使用字符串签名验证方式

md5(md5(私钥+传输值+域名))做认证,    如果别人猜不到你md5的认证构建方式,也就无法自己构建正确的参数传递给你。

  评论这张
 
阅读(1212)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018