<%@ page language="java" import="java.util.*" pageEncoding="gbk"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>My JSP 'test.jsp' starting page</title>
<script language="javascript" type="text/javascript">
//因程序执行耗费时间,所以时间并不十分准确,误差大约在2000毫秒以下
var xmlHttp = false;
//获取服务器时间
try {
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e2) {
xmlHttp = false;
}
}
if (!xmlHttp && typeof XMLHttpRequest != 'undefined') {
xmlHttp = new XMLHttpRequest();
}
xmlHttp.open("GET", "null.txt", false);
xmlHttp.setRequestHeader("Range", "bytes=-1");
xmlHttp.send(null);
severtime=new Date(xmlHttp.getResponseHeader("Date"));
//获取服务器日期
var year=severtime.getFullYear();
var month=severtime.getMonth()+1;
var date=severtime.getDate();
//获取服务器时间
var hour=severtime.getHours();
var minu=severtime.getMinutes();
var seco=severtime.getSeconds();
//获取客户端时间
localtime=new Date();
//取得时间差
var jtime=Math.abs(localtime.getTime()-severtime.getTime());
var jdate=jtime/(24*60*60*1000);
var jhour=jtime%(24*60*60*1000)/(60*60*1000);
var jminu=jtime%(24*60*60*1000)%(60*60*1000)/(60*1000);
var jsecond=jtime%(24*60*60*1000)%(60*60*1000)%(60*1000)/1000;
//格式化输出客户端时间
function getClientTime(){
localtime=new Date();
var cyear=localtime.getFullYear();
var cmonth=localtime.getMonth()+1;
var cdate=localtime.getDate();
var chour=localtime.getHours();
var cminu=localtime.getMinutes();
var cseco=localtime.getSeconds();
ccyear=addZero(cyear);
ccmonth=addZero(cmonth);
ccdate=addZero(cdate);
cchour=addZero(chour);
ccminu=addZero(cminu);
ccseco=addZero(cseco);
cinnerdata="当前客户端时间:";
document.getElementById("clienttime").innerHTML=cinnerdata+ccyear+"-"+ccmonth+"-"+ccdate+" "+cchour+":"+ccminu+":"+ccseco;
document.getElementById('xctime').innerHTML="时间相差:"+Math.round(jdate)+"天"+Math.round(jhour)+"小时"+Math.round(jminu)+"分钟"+jsecond+"秒 总计:"+jtime+"毫秒";
}
//格式化输出服务器时间
function getSeverTime(){
seco++;
if(seco==60){
minu+=1;
seco=0;
}
if(minu==60){
hour+=1;
minu=0;
}
if(hour==24){
date+=1;
hour=0;
}
//日期处理
if(month==1||month==3||month==5||month==7
||month==8||month==10||month==12)
{
if(date==32)
{
date=1;
month+=1;
}
}else if(month==4||month==6||month==9||month==11){
if(date==31){
date=1;
month+=1;
}
}else if(month==2){
if(year%4==0&&year%100!=0){//闰年处理
if(date==29){
date=1;
month+=1;
}
}else{
if(date==28){
date=1;
month+=1;
}
}
}
if(month==13){
year+=1;
month=1;
}
sseco=addZero(seco);
sminu=addZero(minu);
shour=addZero(hour);
sdate=addZero(date);
smonth=addZero(month);
syear=year;
innerdata="当前服务器时间:";
document.getElementById("servertime").innerHTML=innerdata+syear+"-"+smonth+"-"+sdate+" "+shour+":"+sminu+":"+sseco;
setTimeout("getSeverTime()",1000);
setTimeout("getClientTime()",100);
}
function addZero(num) {
num=Math.floor(num);
return ((num <= 9) ? ("0" + num) : num);
}
</script>
</head>
<body onload="getSeverTime();">
<p id="servertime"></p>
<p id="clienttime"></p>
<p id="xctime"></p>
</body>
</html>
转:http://hi.baidu.com/study_discuss/blog/item/6d20cdca013b5d4cf31fe7aa.html
分享到:
相关推荐
日志信息将显示服务器时间、客户端时间和时间差,帮助开发者分析两者之间的偏差。 通过这种方式,开发者可以定期进行测试,确保在实际应用中,服务器和客户端时间的同步性达到预期。在实际项目中,可能还需要考虑...
asp获取服务器时间,通过Javascript计算并即时显示出来
在Android开发中,通过将Java对象转换为JSON字符串,可以在客户端和服务端之间轻松地传递数据。 在本案例中,"JsonServerAddHttp服务器端"可能包含了使用JSP(Java Server Pages)编写的服务端代码。JSP是Java EE...
4. 文件预览:对于某些类型的文件(如图片或文本),客户端可以提供预览功能,通过获取服务器返回的文件内容来展示。 在这个场景中,"编译好的"可能意味着服务器和客户端的代码已经被编译成可执行文件,用户可以...
想要知道对方的服务器时间怎么办?这段代码就可以轻松实现啦。在chrome的console中输出这段代码就会返回一个时间,是服务器时间哦!
5. **服务器端插件或扩展**: 有些服务器扩展或IIS模块可能提供获取客户端MAC地址的功能,但这通常需要在服务器端进行配置,并可能涉及到额外的安全风险。 6. **IP到MAC映射**: 如果服务器与客户端在同一局域网内,...
通过分析这些代码,你可以深入理解如何在实际项目中整合Android客户端和服务器的通信。 总的来说,构建一个Android应用与基于Tomcat的HTTP服务器的通信系统涉及到了Android网络编程、Servlet技术、JSON数据交换和...
在ASP.NET Web应用程序中,获取客户端的IP地址和MAC地址是常见的需求,这通常涉及到网络编程和服务器端脚本处理。以下将详细讲解如何实现这一功能。 首先,客户端的IP地址可以通过HTTP请求头中的`REMOTE_ADDR`字段...
在给定的标题“javascript写的客户端和smtp服务器、pop3服务器”中,涉及到的是使用JavaScript来实现邮件系统的客户端和服务器端功能。这包括了发送邮件的SMTP(Simple Mail Transfer Protocol)服务器以及接收邮件...
- `js 服务器时间`:指的是JavaScript获取服务器时间的方法,如上述示例所示。 - `倒计时`:指的是使用JavaScript实现的定时器功能,用来展示从某一时间点开始的剩余时间。 5. **项目文件结构**: - `demoeee....
在JavaScript(JS)中获取服务器时间是一个常见的...总的来说,使用JavaScript获取服务器时间涉及网络请求、响应解析以及日期和时间处理。通过理解这些概念和技术,你可以构建出能够准确反映服务器时间的Web应用程序。
本文将介绍几种使用JavaScript获取服务器时间的方法。 首先,一种常见的方法是通过创建AJAX请求到服务器,并从服务器端获取时间。使用AJAX请求可以避免刷新页面而重新获取时间。在上面给出的代码示例中,定义了一个...
### 服务器端世界时间(UTC)转换客户端时区时间 #### 概述 在现代互联网应用中,服务器通常需要处理来自全球各地用户的请求,并且在显示时间信息时必须考虑到用户所在的地理位置及其对应的时区差异。例如,对于一个...
综上所述,通过JavaScript获取客户端的网络信息需要利用特定的技术,如WMI,并且在实际应用中需要考虑隐私保护和浏览器兼容性问题。在设计系统时,应尽量避免过于依赖这些信息,而是采用更加安全和通用的身份验证和...
在JavaScript中,获取客户端IP地址和MAC地址是一个相对复杂的过程,因为JavaScript的浏览器安全限制不允许直接访问客户端的MAC地址。然而,我们可以通过一些间接的方法来获取客户端的IP地址。在这个场景下,`...
总的来说,这个主题涉及到了使用jQuery结合JavaScript的`Date`对象来获取和展示客户端的系统时间。通过理解这些概念和技巧,开发者可以创建出各种与时间相关的动态效果,如倒计时、实时钟等,从而提升用户体验。
JavaScript是一种广泛应用于网页和网络应用开发的脚本语言,它主要负责在用户的浏览器端执行,为网页添加交互性,实现动态效果和客户端的数据验证。在本课程“JavaScript客户端验证和页面特效制作”中,我们将深入...
这个例子主要涉及到了Ajax(异步JavaScript和XML)技术,用于实现客户端与服务器端的远程调用。Ajax允许网页不需重新加载整个页面的情况下更新部分网页内容,从而提升了用户体验。 首先,我们需要理解Ajax的工作...
本话题主要探讨如何通过WebService技术获取服务端的硬件信息以及客户端的IP地址、MAC地址和浏览器信息,甚至进一步定位到客户端所在的城市。这在系统监控、数据分析、安全防护等多个领域都有着重要的应用。 首先,...
在本示例中,Android客户端负责用户界面、数据获取和显示。它使用HTTP或HTTPS协议通过网络与服务器进行通信。Android SDK提供了HttpURLConnection和HttpClient等API来实现网络请求,但现在推荐使用Retrofit、OkHttp...