DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> JavaScript綜合知識 >> javascript實現獲取cookie過期時間的變通方法
javascript實現獲取cookie過期時間的變通方法
編輯:JavaScript綜合知識     

 javascript和動態頁無法獲取cookie過期的時間,過期時間由浏覽器管理,javascript和動態頁只能設置過期時間,無法通過document.cookie(javascript)或者Cookie.Expires(asp.net)屬性獲取到。

 

代碼如下:
<%@page language="C#" Debug="true"%>
<script runat="server">
    protected void Page_Load(object sender, EventArgs e)
    {
        HttpCookie hc = Request.Cookies["abc"];
        if (hc != null)
        {
            Response.Write(hc.Expires);//0001-1-1 0:00:00
            Response.End();
           
        }
    }
</script>

 

asp.net的cookie雖然有Expires屬性,但是Response.Write輸出Expires屬性得到的是0001-1-1 0:00:00(DateTime.MinValue),這個是由於浏覽器並沒有發送cookie的過期時間給服務器,所以用DateTime.MinValue來填充cookie的Expires屬性。
 
一定要獲取過期時間,需要通過另外一個cookie值來記錄對應cookie的過期時間。如下:

代碼如下:
<script>
    var d = new Date();
    d.setHours(d.getHours() + 1); //1小時候過期
    document.cookie = 'testvalue=123;expires=' + d.toGMTString(); //存儲cookie值
    document.cookie = 'testexp=' + escape(d.toLocaleString()) + ';expires=' + d.toGMTString(); //存儲cookie過期時間,要獲取testvalue這個cookie的過期時間,通過獲取testexp這個cookie來實現
   
</script>
XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved