标签:发送 cat fun send 全局 json格式 content 对象 包括
GET 基本上用于从服务器获得(取回)数据。注释:GET 方法可能返回缓存数据。
POST 也可用于从服务器获取数据。不过,POST 方法不会缓存数据,并且常用于连同请求一起发送数据。
var ajaxObj = new XMLHttpRequest();
//参数1:发送请求的方式
//参数2:发送请求的url(包括数据)
//参数3:异步(true)/同步(false)
ajaxObj.open("GET","1ajax_get.php?name=sfk&age=不知道",true);
ajaxobj.send();
ajaxObj.onreadystatechange = function () {
//第五步:判断是否成功
//(1)网络状态值,成功为4
//0——(未初始化)还没有调用send()
//1——(正在载入)已经调用send(),正在发送请求
//2——(载入完成)已经接收全部内容
//3——(交互)解析内容
//4——(完成)内容解析完成,可以返回数据
//(2)状态码,成功为200
if(ajaxObj.readyState == 4 && ajaxObj.status == 200){
//第六步:接收返回数据
// console.log(JSON.parse(ajaxObj.responseText));
console.log(ajaxObj.responseText);
//JSON.parse:字符串转json
//JSON.stringify:json转字符串
// var newDiv = document.createElement("div");
// newDiv.innerHTML = ajaxObj.responseText;
// document.body.appendChild(newDiv);
}
}
//超级全局变量$_GET是系统提供的一个关联数组
//用于放 前端通过get请求传递过来的数据
$userName = $_GET["name"];
$userAge = $_GET["age"];
//json_encode:数组转json格式的字符串
//json_decode:json格式的字符串转数组
echo json_encode(array(
"n"=>$userName,
"a"=>$userAge
));
注意:get请求传递数据的方式,在请求的url后拼接?数据&数据
POST请求与GET请求相比多了个请求头,参数的发送方式也不同
var ajaxObj = new XMLHttpRequest();
ajaxObj.open("POST","2ajax_post.php",true);
//设置请求头
//注意:需要设置在open和send中间
//application/x-www-form-urlencoded:被编码为名称/值对。这是标准的编码格式
//multipart/form-data:被编码为一条消息
//text/plain:以纯文本形式编码
ajaxObj.setRequestHeader("CONTENT-TYPE","application/x-www-form-urlencoded");
ajaxObj.send("name=gg&address=地球");
ajaxObj.onreadystatechange = function () {
if(ajaxObj.readyState == 4 && ajaxObj.status == 200){
console.log(JSON.parse(ajaxObj.responseText));
}
}
//POST传参:在send中进行传递参数
//超级全局变量 $_POST
//接收post请求传递的参数
$userName = $_POST["name"];
$userAddress = $_POST["address"];
//返回给前端json格式的字符串
echo json_encode(array(
"n"=>$userName,
"a"=>$userAddress
));
标签:发送 cat fun send 全局 json格式 content 对象 包括
原文地址:https://www.cnblogs.com/heson/p/10014471.html