var req = new XMLHttpRequest(); req.open('GET', location, false); req.send(null); console.log(req.getResponseHeader('Date'));
function getServerDate(){ var xhr = null; if(window.XMLHttpRequest){ xhr = new window.XMLHttpRequest(); }else{ // ie xhr = new ActiveObject("Microsoft") } xhr.open("GET","/",false)//false不可变 xhr.send(null); var date = xhr.getResponseHeader("Date"); return new Date(date); }
一样返回的是一个Date对象,xhr.open()必须使用同步;
无需填写请求连接;open,send,和getResponseHeader 必须按序编写。
如需使用异步请求,可监听onreadystatechange状态来作不一样的操做。ajax
function getServerDate(){ var xhr = null; if(window.XMLHttpRequest){ xhr = new window.XMLHttpRequest(); }else{ // ie xhr = new ActiveObject("Microsoft") } xhr.open("GET","/",true); xhr.send(null); xhr.onreadystatechange=function(){ var time,date; if(xhr.readyState == 2){ time = xhr.getResponseHeader("Date"); date = new Date(time); console.log(date); } } }
使用异步不是很方便返回时间。
这里的readyState有四种状态,方便作不一样处理:服务器
失败状态,status的值:
200: "OK"
404: 未找到页面异步