摘要:獲取服務器時間最近新作了一個項目,頻繁的需要獲取當前時間進行一些邏輯處理,但是用獲取本機時間,是存在的,那么就需要我們使用服務器時間,可獲取到服務器時間,原理是使用請求,返回的頭部信息就含有服務器端的時間信息,獲取到就可以了。
js獲取服務器時間
最近新作了一個項目,頻繁的需要獲取當前時間進行一些邏輯處理,但是用js獲取本機時間,是存在bug的,那么就需要我們使用服務器時間,js可獲取到服務器時間,原理是使用 ajax請求,返回的頭部信息就含有服務器端的時間信息,獲取到就可以了。
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狀態來做不同的操作。
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有四種狀態,方便做不同處理:
0: 請求未初始化;
1: 服務器連接已建立;
2: 請求已接收;
3: 請求處理中
4: 請求已完成,且響應已就緒
失敗狀態,status的值:
200: "OK"
404: 未找到頁面
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/92563.html
摘要:性能時間線以一個統一的接口獲取由和所收集的性能數據。瀏覽器支持下表列舉了當前主流瀏覽器對性能的支持,其中標注星號的內容并非來自于性能工作小組。 頁面的性能問題一直是產品開發過程中的重要一環,很多公司也一直在使用各種方式監控產品的頁面性能。從控制臺工具、Fiddler抓包工具,到使用DOMContentLoaded和document.onreadystatechange這種侵入式java...
閱讀 3319·2021-11-23 09:51
閱讀 2436·2021-11-09 09:46
閱讀 1476·2019-08-30 15:54
閱讀 3121·2019-08-30 14:22
閱讀 2909·2019-08-29 12:40
閱讀 1629·2019-08-26 10:33
閱讀 1774·2019-08-23 17:09
閱讀 1553·2019-08-23 16:11