Heim  >  Artikel  >  Web-Frontend  >  通过jquery的$.getJSON做一个跨域ajax请求试验_jquery

通过jquery的$.getJSON做一个跨域ajax请求试验_jquery

WBOY
WBOYOriginal
2016-05-16 18:07:15972Durchsuche

(主要是留个备用,怕以后再用到自己却忘记了,所以没有太多的解释,实在看不明白的话,照着我的代码,你也试一个吧)
我后端是用php的,以下代码主要实现的一个功能就是提供一个预约登记的接口,需要传入的数据分别有:用户姓名、联系电话和地址
/*预约登记 执行 接口*/

复制代码 代码如下:

/*预约登记 执行 接口*/
case "yuyue_interface":
$name = trim($_GET['name']);
$phone = trim($_GET['phone']);
$addr = trim($_GET['addr']);
$dt = date("Y-m-d H:i:s");
$cb = $_GET['callback'];
if($name == "" || $name == NULL){
echo $cb."({code:".json_encode(1)."})";
}elseif($phone == "" || $phone == NULL){
echo $cb."({code:".json_encode(2)."})";
}elseif($addr == "" || $addr == NULL){
echo $cb."({code:".json_encode(3)."})";
}else{
$db->execute("insert into tb_yuyue (realname,telphone,danwei,dt,ischeck) values ('$name','$phone','$addr','$dt',0)");
echo $cb."({code:".json_encode(0)."})";
}
exit;
break;

接着就是前端的处理了
复制代码 代码如下:

$(document).ready(function(){
//以下3个为预约登记需要的参数
var name = "name"; //varchar类型,长度最多为8位(4个汉字)
var phone = "phone"; //varchar类型,长度为11位
var addr = "addr"; //varchar类型,长度最多为500位(250个汉字)
$.getJSON("http://请求网站地址/data.php?ac=yuyue_interface&name="+name+"&phone="+phone+"&addr="+addr+"&callback=?", function(data){
if(data.code==1){
//自定义代码
alert("姓名不能为空");
}else if(data.code==2){
//自定义代码
alert("手机不能为空");
}else if(data.code==3){
//自定义代码
alert("所在单位不能为空");
}else{
//自定义代码
alert("预约成功");
}
});
});

需要注意的是,在后端php代码里,必须把传递进来的“ &callback=? ”也输出来,如:
复制代码 代码如下:

$cb = $_GET['callback'];
echo $cb."({code:".json_encode(4)."})";

以上就是一个简单的$.getJSON试验,通过这个试验,我们可以学到如何用$.getJSON,也能学到如何做一个接口让别人跨域请求。
  如果有疑问,可以在下面提出来,如果我哪里写错了,也请帮我指出来。
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn