IT兄弟连 JavaWeb教程 使用AJAX发送POST请求并获取响应

POST请求用于向服务器发送应该被保存的数据,因此POST请求天然比GET请求多需要一份需要被保存的数据。那么这些数据应该放在何处呢?毕竟,我们的open()方法接收的三个参数都没有合适的位置。

答案是需要发送的数据会作为send()方法的参数最终被发往服务器,该数据可以是任意大小,任意类型。

使用Ajax发送POST请求需要使用setRequestHeader()方法设置请求头,代码如下:

function PostRequest(){

    var xhr = null;

    if(window.XMLHttpRequest){

         xhr = new XMLHttpRequest();

    }else{

         xhr = new ActiveXObject("Microsoft.XMLHttp");

    }

    xhr.open('post,’/ajax_demo’,true);

    xhr.setRequestHeader('Content-Type’,"application/x-www-form-urlencoded’);

    xhr.onreadystatechange = function(){

         if(xhr.readyState == 4 && xhr.status == 200){

              var data = xhr.responseText;

         }

    }

    xhr.send('username=itxdl;password=123456’);

}

总结:

●  创建XHR对象 var xhr = new XMLHttpRequest()或var xhr = new ActiveXObject ("Microsoft.XMLHttp")。

●  建立HTTP连接 xhr.open('GET’,URL,ASYNC)。

●  设置请求头 xhr.setRequestHeader('Content-Type’,’application/x-www-form-urlencoded’)。

●  给XHR状态绑定一个回调函数 xhr.onreadystatechange = function(){}。

●  在回调函数中判断Ajax的状态是否等于4,HTTP状态码是否等于200,然后编写相应的业务逻辑。

●  发送一个HTTP请求 xhr.send(data);

转载于:https://my.oschina.net/u/4125915/blog/3058046

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值