摘要:获取服务器时间最近新作了一个项目,频繁的需要获取当前时间进行一些逻辑处理,但是用获取本机时间,是存在的,那么就需要我们使用服务器时间,可获取到服务器时间,原理是使用请求,返回的头部信息就含有服务器端的时间信息,获取到就可以了。
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: 未找到页面
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/92563.html
摘要:性能时间线以一个统一的接口获取由和所收集的性能数据。浏览器支持下表列举了当前主流浏览器对性能的支持,其中标注星号的内容并非来自于性能工作小组。 页面的性能问题一直是产品开发过程中的重要一环,很多公司也一直在使用各种方式监控产品的页面性能。从控制台工具、Fiddler抓包工具,到使用DOMContentLoaded和document.onreadystatechange这种侵入式java...
阅读 3318·2021-11-23 09:51
阅读 2434·2021-11-09 09:46
阅读 1475·2019-08-30 15:54
阅读 3118·2019-08-30 14:22
阅读 2908·2019-08-29 12:40
阅读 1627·2019-08-26 10:33
阅读 1773·2019-08-23 17:09
阅读 1552·2019-08-23 16:11