请注意,本文编写于 1248 天前,最后修改于 1161 天前,其中某些信息可能已经过时。
POST请求:
发送的参数格式不同,请求头设置不同,具体参照 Http请求中请求头Content-Type讲解
发送的参数格式不同,后台获取方式也不相同 php请看 php获取POST数据的三种方法
一、使用XMLHttpRequest
主要分三步:
> > 第一步:创建需要的对象,这里主要用到的是XMLHttpRequest,注意需要考虑早期的IE;
> > 第二步:连接和发送;
> > 第三步:接收;
GET请求:
var httpRequest = new XMLHttpRequest();//第一步:建立所需的对象
httpRequest.open('GET','url',true);//第二步:打开连接 将请求参数写在url中
//ps:"./Ptest.php?name=test&nameone=testone"
httpRequest.send();``//第三步:发送请求 将请求参数写在URL中
/*
获取数据后的处理程序
*/
httpRequest.onreadystatechange = function() {
if(httpRequest.readyState == 4 && httpRequest.status == 200) {
var json = httpRequest.responseText;//获取到json字符串,还需解析
console.log(json);
}
};
POST请求:
var httpRequest = new XMLHttpRequest();
//第一步:创建需要的对象
httpRequest.open('POST','url',true);//第二步:打开连接
httpRequest.setRequestHeader("Content-type","application/x-www-form-urlencoded");//设置请求头 注:post方式必须设置请求头(在建立连接后设置请求头)
httpRequest.send('name=teswe&ee=ef');//发送请求 将情头体写在send中
/* 获取数据后的处理程序*/
httpRequest.onreadystatechange = function() {
//请求后的回调接口,可将请求成功后要执行的程序写在其中
if(httpRequest.readyState == 4 && httpRequest.status == 200) {//验证请求是否发送成功
var json = httpRequest.responseText;//获取到服务端返回的数据
console.log(json);
}
};
post方式发送json
var httpRequest = new XMLHttpRequest();//第一步:创建需要的对象
httpRequest.open('POST','url',true); //第二步:打开连接
/*发送json格式文件必须设置请求头 ;如下 - */
httpRequest.setRequestHeader("Content-type","application/json");//设置请求头 注:post方式必须设置请求头(在建立连接后设置请求头)
var obj = { name: 'zhansgan', age: 18 };
httpRequest.send(JSON.stringify(obj));//发送请求 将json写入send中
/*获取数据后的处理程序*/
httpRequest.onreadystatechange = function() {//请求后的回调接口,可将请求成功后要执行的程序写在其中
if(httpRequest.readyState == 4 && httpRequest.status == 200) {//验证请求是否发送成功
var json = httpRequest.responseText;//获取到服务端返回的数据
console.log(json);
}
};