国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

javascript實現(xiàn)獲取服務器時間

2019-11-20 12:26:58
字體:
來源:轉載
供稿:網(wǎng)友

JS是在客戶端運行的腳本,而不是運行在服務器上,通常來說,通過JS獲取時間的時候獲取到的時間是訪客本地電腦上的時間,為了讓網(wǎng)頁上的時間不因訪客電腦差異而不同,我們有必要直接JS獲取服務器時間。

下面是完整的js獲取服務器時間代碼,是使用javascript獲取服務器時間的完整實例,js動態(tài)刷新服務器時間。

<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>AJAX獲取服務器時間</title><script type="text/javascript">    /*     * ajax 函數(shù),處理 ajax 請求     * @param function callback 回調函數(shù)     * @因為要和服務器交互,所以必須在服務器環(huán)境運行,不能在硬盤上直接打開    */    function ajax(callback){        if(typeof callback!='function') return;        var ajaxObject;        try{            ajaxObject=new XMLHttpRequest();        }catch(e){            try{                ajaxObject=new ActiveXObject('Microsoft.XMLHTTP');            }catch(e){            }        }        if(!ajaxObject) return;        if(ajaxObject.overrideMimeType){            ajaxObject.overrideMimeType('text/html');        }        //location.href可以換成其他url,但必須是同一個站點的鏈接,并且文件存在        ajaxObject.open('get',location.href);        ajaxObject.send(null);        ajaxObject.onreadystatechange=function(){            if(ajaxObject.readyState==4){                if(ajaxObject.status==200){                    callback(ajaxObject);                }            }        };    }    /*     * 獲取時間并動態(tài)刷新    */    function getTime(){        ajax(            function(ao){                //只需要AJAX一次,將服務器時間獲取后以毫米為單位保存到一個變量中                _timestamp=Date.parse(ao.getResponseHeader('Date'));                _timestamp=_timestamp.toString().match(/^/d$/)?_timestamp:new Date().getTime();                //設置定時器每過一秒動態(tài)刷新一次時間                setInterval(                    function(){                        //這里可以自定義時間顯示格式                        document.getElementById('_timer').innerHTML=new Date(_timestamp).toLocaleString();                        _timestamp+=1000;                    },                    1000                );            }        );    }    window.onload=getTime;</script></head><body>    <div id="_timer">正在獲取服務器時間……</div></body></html>

思路分析:

服務器端時間這個概念很模糊。因為服務器端畢竟可能不是由一臺機器組成的。最簡單的情況,也分web服務器和db服務器。你說的究竟是哪一種

如果是web服務器。
那么直接在java或者.net那頭new Date()就ok了
不要在網(wǎng)頁中的<script>里面new Date,那個只是客戶端時間

如果是db服務器。
需要連接到數(shù)據(jù)庫,通過sql來取得。比如oracle的就是select sysdate from dual。

示例:

如果js要取得這樣的服務器端時間,方法有很多。思路大體差不多。
1.
<script type="text/javascript">
    var date = <%=date(剛才在服務器端取得的時間,內容取得方法上面分析過了)%>
</script>

2.<script type="text/javascript" src=".../ScriptServlet"></script>
將Servlet的返回流中寫入一個js文件,使其當中的var nowDate = 服務器端時間

3.ajax,這個就不說了,網(wǎng)上一大堆

以上所述就是本文的全部內容了,希望大家能夠喜歡。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 界首市| 哈密市| 中山市| 山东| 尼勒克县| 象州县| 萍乡市| 和硕县| 东平县| 五台县| 德江县| 探索| 饶河县| 临澧县| 邵阳市| 长顺县| 遵义市| 峡江县| 阿克陶县| 金塔县| 曲靖市| 安徽省| 玉门市| 扶余县| 南开区| 建始县| 图片| 陈巴尔虎旗| 和田市| 本溪市| 桦南县| 罗定市| 汉寿县| 裕民县| 紫阳县| 珠海市| 湾仔区| 望江县| 商丘市| 道孚县| 洛隆县|