需要对不同服务器下的项目进行同步登录。
【注册】,【删除】,【修改密码】,这种用CRUL函数就可以实现。
【登录】和【退出登录】,因为涉及到跨域请求和cookie的带回,利用jQuery-jsonp插件就能完美的解决。
前端代码
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>ajax-test</title>
</head>
<body>
<div id="J_AjaxTest">click here</div>
<div id="J_AjaxContent">show content here</div>
<script src="/js/jquery-1.7.2.min.js"></script>
<script src="/js/jquery.jsonp.js"></script>
<script>
$(function(){
<span style="white-space:pre"> </span>$('#J_AjaxTest').bind('click', function(event) {
<span style="white-space:pre"> </span>
<span style="white-space:pre"> </span> $.jsonp({
<span style="white-space:pre"> </span>url: '/index.php?m=default.ajax',
<span style="white-space:pre"> </span>// data: { yourdata: "data" }, // 传过去的自定义数据
<span style="white-space:pre"> </span>// timeout : 1000, // 响应时间
<span style="white-space:pre"> </span>callbackParameter: "callback_name", // 回调用GET的key
<span style="white-space:pre"> </span>callback: "callback_value", // 回调函数名
<span style="white-space:pre"> </span>success: function (obj,b){ // obj 服务器返回的json数据 , b 成功输出字符串 success
<span style="white-space:pre"> </span>console.log(obj);
<span style="white-space:pre"> </span>}
<span style="white-space:pre"> </span>error: function (xOptions, textStatus) {
<span style="white-space:pre"> </span>}
<span style="white-space:pre"> </span>});
<span style="white-space:pre"> </span>
<span style="white-space:pre"> </span>
<span style="white-space:pre"> </span>});
})
</script>
</body>
</html>
后端代码
public function ajax_test()
<span style="white-space:pre"> </span>{
<span style="white-space:pre"> </span>// P3P头兼容IE浏览器
<span style="white-space:pre"> </span>header("P3P: CP=CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR");
<span style="white-space:pre"> </span>$callback = $_GET['callback_name'];
<span style="white-space:pre"> </span>$arr = array(
<span style="white-space:pre"> </span>'a' => 'b',
<span style="white-space:pre"> </span>'z' => array('c'=>'哈哈')
<span style="white-space:pre"> </span>);
<span style="white-space:pre"> </span>echo $callback.'('.json_encode($arr).')';
<span style="white-space:pre"> </span>exit;
<span style="white-space:pre"> </span>}