分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 软件开发

有关js的date的相关知识

发布时间:2023-09-06 02:09责任编辑:熊小新关键词:js

最近做项目,用了new Date().getTime()获取本地时间,但是如果用户篡改了手机时间,程序漏洞明显暴露。所以如果为保证程序的稳健安全性,应该是要使用网络时间的,也就是服务器时间。原理就是使用ajax时间,返回的头部信息里就含有服务端的时间信息,获取就可以了。

1,原生同步

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);}getServerDate();

2,原生异步

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); ???????} ???}}

【完】

南无释迦牟尼菩萨 南无释迦牟尼菩萨 南无释迦牟尼菩萨

有关js的date的相关知识

原文地址:https://www.cnblogs.com/tangjiao/p/9448602.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved