JavaScript or JQuery 获取服务器时间
用js做时间校正,获取本机时间,是存在bug的。
使用js也可获取到服务器时间,原理是使用 ajax请求,返回的头部信息就含有服务器端的时间信息,获取到就可以了(有的IE下扔不会正常获取,还是更建议走后台接口的方式吧)。以下:
1、依赖jQuery
代码:
function getServerDate() {var serverDate;$.ajax({async: false,type: "POST",success: function (result, status, xhr) {serverDate= new Date(xhr.getResponseHeader("Date"));},error: function (result, status, xhr) {serverDate= new Date();},});return serverDate; }
以上函数返回的就是一个Date对象,注意在使用ajax时必须同步,要不然无法返回时间日期。
无需填写请求链接;
如果服务器时间和本地时间有时差,需要做校正。
2、原生
代码:
function getServerDate(){var xhr = null;if(window.XMLHttpRequest){xhr = new window.XMLHttpRequest();}else{ // iexhr = 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{ // iexhr = 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.cnblogs.com/hellobook/p/6112182.html
转载于:https://www.cnblogs.com/jearay/p/9796972.html
JavaScript or JQuery 获取服务器时间相关推荐
- 通过JQuery ajax获取服务器时间
通过JQuery ajax获取服务器时间,突然发现IE有兼容问题,原来是忽略了参数type引起的,因此需要加上type:'HEAD'或者type:'POST'即可. <script> // ...
- 前端——JavaScript获取系统时间以及通过ajax获取服务器时间
很多人会通过下列方式获取系统时间,并对时间进行处理: var time,year,month,date,hours,minutes,seconds; time = new Date(); year = ...
- 使用AJAX技术获取服务器时间
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> ...
- js取服务器系统时间,JS中new Date()用法及获取服务器时间
1.获取服务器时间: var now = new Date($.ajax({async: false}).getResponseHeader("Date")); 2.new Dat ...
- 使用javascript和jquery获取类方法
1.本质区别 jquery是一个javascript库.jquery是一个基于javascript语言的框架,本质上就是javascript. 2.代码编写的差异 jquery大大简化了JavaScr ...
- Jquery 获取当前时间日期
Jquery 获取当前时间日期代码如下: <script type="text/javascript">var timestamp = new Date().getTi ...
- ajax 获取服务器时间
<script language="javascript" type="text/javascript"> //因程序执行耗费时间,所以时间并不十分 ...
- jQuery获取当前时间
jQuery获取当前时间 提示:在开发中,页面上可能要显示当前的时间,我们可以直接在前端进行实现 提示: <span id = "time"></span> ...
- html页面获取服务器时间,[html]定时获取服务器时间和本地时间
[html]定时获取服务器时间和本地时间 2018-11-1 萧 写技术 .time_div{width:100%; padding:10px; text-align:center; margin:5 ...
最新文章
- 深度丨全球14家顶尖 AI 产业巨头深度学习实力及战略分析
- 漫画:什么是 “抽象工厂模式” ?
- 文件目录Android SDK目录结构
- discuz登陆首页后提示style_1_commen.css,关于Discuz用户面板必须刷新才能显示登录状态的问题解决办法...
- struts2中action向action之间传数据和action向jsp传数据理解
- mysql 进阶方向_mysql数据库入门、进阶和提升(续二)
- ASP.NET MVC实践系列1-UrlRouting
- 掘金外链即将失效?论如何用脚本一次性下载/替换失效的外链图片
- [sql]匹配标题中出现最多关键字的结果
- php怎么清空cookies,php cookie如何清除
- NRF52840 DFU升级(一): 按键升级
- 盗心贼歌曲用计算机多少数字,抖音上常见背景音乐歌词盗心的贼是那首歌?
- erlang之ets总结
- 五招防止QQ密码被盗
- 关于MySql中explain结果filtered的理解
- Aspose.Words 创建表格
- android 设置壁纸,在Android中使用WallpaperManager设置壁纸
- Linux_查看内存使用情况
- 微信公众号怎么发PDF文件
- 量子计算机可以发明时光机,俄科学家发明全球第一台时光机,可让微小粒子向过去移动1秒钟...
热门文章
- Linux系统下授权MySQL账户访问指定数据库和数据库操作
- 安装 pear、phpunit 测试用例步骤方法
- SQL注入漏洞修复办法
- 构建直接路由模式(DR)的LVS
- 算法设计 分治, 归并排序, 快速排序
- python中的for in 语句_2、python,for..in语句
- 森林图怎么分析_新疆森林消防总队特勤大队:“火焰蓝”备战春防,我们时刻准备着!...
- 儿童电脑学习软件_电脑端英语学习宝藏软件
- linux数组拼接_Linux中Shell数组的笔记
- Jmeter系列之数据库操作