XMLHttpRequest里的setRequestHeader到底怎么用?
「已注销」 2014-03-07 04:08:28 //获取ajax对象
var xmlHttp = new XMLHttpRequest();
/**
* 1.method http方法,例如:POST、GET、PUT及PROPFIND。大小写不敏感。
* 2.url 请求的URL地址,可以为绝对地址也可以为相对地址。
* 3.async 布尔型,指定此请求是否为异步方式,默认为true。如果为真,当状态改变时会调用onreadystatechange属性指定的回调函数。
* 4.username 如果服务器需要验证,此处指定用户名,如果未指定,当服务器需要验证时,会弹出验证窗口。
* 5.password 验证信息中的密码部分,如果用户名为空,则此值将被忽略。
*/
var method = "get";
var url = "test.php";
var async = true;
xmlHttp.open(method, url, async);
//设置回调函数,接收服务器端的信息以进行处理
xmlHttp.onreadystatechange = getServerInfo;
//想服务器端发送内容,为什么不起作用呢?
xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xmlHttp.send(null);
/*****************ajax的回调函数*******************/
function getServerInfo(){
if(xmlHttp.readyState==4){
var headers = xmlHttp.getAllResponseHeaders();
//获取所有响应头信息
alert(headers);
//获取指定的响应头里面的信息
//获取时间
//alert(xmlHttp.getResponseHeader("Date"));
//获取服务器
//alert(xmlHttp.getResponseHeader("Server"));
//获取服务器脚本版本
//alert(xmlHttp.getResponseHeader("X-Powered-By"));
//获取相应头长度
//alert(xmlHttp.getResponseHeader("Content-Length"));
//获取链接状态
//alert(xmlHttp.getResponseHeader("Connection"));
//获取文档类型
//alert(xmlHttp.getResponseHeader("Content-Type"));
//获取连接持续时间
//alert(xmlHttp.getResponseHeader("Keep-Alive"));
document.myform.time.value = xmlHttp.responseText;
}
}
这是我的代码,下面所有alert弹出的内容都是自己在headers里面抓取的,但是我用了setRequestHeader方法后,却看不到什么效果,而且在headers里面也看不到我自己写的内容,是怎么回事呢?能告诉我setRequestHeader()方法的详细使用么?