资讯专栏INFORMATION COLUMN

前端获取服务器时间

layman / 1753人阅读

摘要:获取服务器时间最近新作了一个项目,频繁的需要获取当前时间进行一些逻辑处理,但是用获取本机时间,是存在的,那么就需要我们使用服务器时间,可获取到服务器时间,原理是使用请求,返回的头部信息就含有服务器端的时间信息,获取到就可以了。

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/113005.html

相关文章

  • 前端获取服务时间

    摘要:前端得到的本地时间设备时间不一定是准确的,因为用户有可能故意修改时间,用这个不一定准确的时间做一些校验往往不靠谱。一般获取服务端时间,都是通过接口让后端返回的,其实,也有方法在前端直接获取服务端的时间。 前端得到的本地时间(设备时间)不一定是准确的,因为用户有可能故意修改时间,用这个不一定准确的时间做一些校验往往不靠谱。 一般获取服务端时间,都是通过接口让后端返回的,其实,也有方法在前...

    岳光 评论0 收藏0
  • 前端获取务器时间

    摘要:获取服务器时间最近新作了一个项目,频繁的需要获取当前时间进行一些逻辑处理,但是用获取本机时间,是存在的,那么就需要我们使用服务器时间,可获取到服务器时间,原理是使用请求,返回的头部信息就含有服务器端的时间信息,获取到就可以了。 js获取服务器时间 最近新作了一个项目,频繁的需要获取当前时间进行一些逻辑处理,但是用js获取本机时间,是存在bug的,那么就需要我们使用服务器时间,js可获取...

    Betta 评论0 收藏0
  • 前端获取务器时间

    摘要:获取服务器时间最近新作了一个项目,频繁的需要获取当前时间进行一些逻辑处理,但是用获取本机时间,是存在的,那么就需要我们使用服务器时间,可获取到服务器时间,原理是使用请求,返回的头部信息就含有服务器端的时间信息,获取到就可以了。 js获取服务器时间 最近新作了一个项目,频繁的需要获取当前时间进行一些逻辑处理,但是用js获取本机时间,是存在bug的,那么就需要我们使用服务器时间,js可获取...

    n7then 评论0 收藏0
  • 聊一聊前端的监控

    摘要:今天我们来聊聊前端的监控我们为什么需要前端监控为了获取用户行为以及跟踪产品在用户端的使用情况,并以监控数据为基础,指明产品优化方向前端监控分为三类性能项目数据监控异常监控性能监控衡量前端的性能的指标是时间那么如何监测时间呢,浏览器给我们提 今天我们来聊聊前端的监控 我们为什么需要前端监控 ? 为了获取用户行为以及跟踪产品在用户端的使用情况,并以监控数据为基础,指明产品优化方向 前端监控...

    Pikachu 评论0 收藏0
  • 使用性能API快速分析web前端性能

    摘要:性能时间线以一个统一的接口获取由和所收集的性能数据。浏览器支持下表列举了当前主流浏览器对性能的支持,其中标注星号的内容并非来自于性能工作小组。 页面的性能问题一直是产品开发过程中的重要一环,很多公司也一直在使用各种方式监控产品的页面性能。从控制台工具、Fiddler抓包工具,到使用DOMContentLoaded和document.onreadystatechange这种侵入式java...

    mj 评论0 收藏0

发表评论

0条评论

layman

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<