jsonp跨域

//一,客户端代码示例
$("#btn").click(function(){
	var j = $("form").serialize();//序列化name/value
	$.ajax({
	    url:"http://www.jiangcms.com/jsonp.php",
	    type:"post",
	    //data:{'name':'jiang','pass':123456,'dbcache':'redis','db':'mysql','js':'javascript'},
	    data:j,
	    dataType:"jsonp",  //类型,代表当前Http请求为jsonp的请求方式
	    jsonp: 'callback', //jsonp回调参数,必需,默认callback,代表的是远程服务端接收客户端回调函数名的参数名
	    //jsonpCallback: "callbackHandler", //代表远程服务调用结束后的本地回调函数名,也可以不给这个jsonpCallback参数,远程服务调用成功后,执行了SUCCESS这个回调函数,该函数与SUCCESS回调函数相同
	    cache:false,
	    success:function(data){
			console.log(data);
			$("#append").append(data.dbcache+'---'+data.db);
	    },
	    error:function(error){
	      console.log(error);
	    }
	});
});
//客户端回调
function callbackHandler(json) {
    // console.log(json);
    // alert(json.content);
    $("#append").append(json.dbcache+'---'+json.db);
}
//服务端代码示例
header("Content-Type:text/html;charset=UTF-8");
$callback = isset($_GET['callback']) ? trim($_GET['callback']) : ''; //jsonp回调参数,必需参数
$data =array('name'=>$_GET['name'],'pass'=>$_GET['pass'],'dbcache'=>$_GET['dbcache'],'db'=>$_GET['db'],'js'=>$_GET['js']); //jsonp回调参数,必需 
$result  = json_encode($data); //以json数据格式返回
echo $callback."($result)"; //返回格式,必需  


你可能感兴趣的:(ajax)