如何獲取服務器當前時間


前端能獲得的時間有兩種:客戶端與服務器的時間.

如何獲取服務器當前時間,主要是處理客戶端本地機器時間錯誤問題。

方法一:
原理:獲取服務器返回的頭部信息中的Date屬性
   由於得到的是GMT(格林尼治時間)
     所以要轉換成東八區的時間
     這個就是響應服務器的當前時間。

var date = new Date($.ajax({async: false}).getResponseHeader("Date"));
var bom= date + (3600000 * 8);
var time = new Date(bom);

方法二:

 原理:在 HTTP 頭里帶一個Date的頭部信息,用Ajax直接取頭部信息里的Date就可獲取服務器時間

-------------原生js寫法-------------

 

var xhr = new XMLHttpRequest();  

if( !xhr ){  

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

}  

xhr.open("HEAD",location.href,true);  

xhr.onreadystatechange=function(){  

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

         alert(xhr.getResponseHeader("Date"));  

    }  

}  

xhr.send(null); 

 

-------------jquery寫法-------------

var time;

$.ajax({type:'HEAD', async: true})

 .success(function(data, status, xhr){

   time=xhr.getResponseHeader('Date');

 });

 

 

方法三:
在script中加一個 runat="server" 屬性,表示是在服務器環境下,即如下:
<Script runat="server" language="javascript"></script>


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM