expireat設(shè)置的過(guò)期時(shí)間是怎么計(jì)算的?
1. dateadd法 1)將期限設(shè)置為當(dāng)前日期后的第N天的0時(shí)0分0秒 Response.Cookies(“LastView”).Expires=dateadd(“d”,N,date) 2)將期限設(shè)置為當(dāng)前日期后的第N月的同一天的0時(shí)0分0秒 Response.Cookies(“LastView”).Expires=dateadd(“m”,N,date) 3)將期限設(shè)置到當(dāng)前時(shí)間后的第N天的該時(shí)該分該秒 Response.Cookies(“LastView”).Expires=dateadd(“d”,N,now) 4)將期限設(shè)置到當(dāng)前時(shí)間后的第N+M天的該時(shí)該分該秒 Response.Cookies(“LastView”).Expires=dateadd(“d”,N,now+M) 5)將期限設(shè)置到當(dāng)前時(shí)間后的第N月的該時(shí)該分該秒 Response.Cookies(“LastView”).Expires=dateadd(“m”,N,now) 6)將期限設(shè)置到當(dāng)前時(shí)間后的第N月的同一日后的第M天的該時(shí)該分該秒 Response.Cookies(“LastView”).Expires=dateadd(“m”,N,now+M) 2. 確定日期法 1)將期限設(shè)置到某一日的0時(shí)0分0秒失效 舉例:到2003年1月29日0時(shí)0分0秒失效 Response.Cookies(“LastView”).Expires=# 1/29/2003 # 或 Response.Cookies(“LastView”).Expires=# 2003/1/29 # 或 Response.Cookies(“LastView”).Expires=“January 29,2003” 2)將期限設(shè)置到某一日的某一時(shí)刻失效 舉例:到2003年1月29日21時(shí)0分0秒失效 Response.Cookies(“LastView”).Expires = #2003/1/29 21:00:00# 或 Response.Cookies(“LastView”).Expires = #1/29/2003 21:00:00# 或 Response.Cookies(“LastView”).Expires = #January 29,2003 21:00:00# 其實(shí),在這種方法中,用““ ””和“# #”的效果是一樣的。例如 Response.Cookies(“LastView”).Expires=“January 29,2003” 和 Response.Cookies(“LastView”).Expires=# January 29,2003 # 的效果就是相同的。 3. date+ \now+ 法 這種方法主要結(jié)構(gòu)為Date+數(shù)學(xué)式或now +數(shù)學(xué)式。通過(guò)簡(jiǎn)單的四則運(yùn)算的方法,將Cookie 的失效時(shí)間設(shè)置到當(dāng)前時(shí)間后的某一段時(shí)間內(nèi)。這里的加號(hào)都表示在當(dāng)前時(shí)間的基礎(chǔ)上加上預(yù)設(shè)時(shí)間。 1)date+法 如將期限設(shè)置為當(dāng)前日期后的第N天的0時(shí)0分0秒,我們可以使用上述已談到過(guò)的方法也可以使用如下格式: Response.Cookies(“LastView”).Expires=Date+N date+法是一種比較死的方法。它和上述方法差別不是很大,完全可以由上述幾種方法代替。下面介紹now+法,這是一種比較靈活的方法,它可以將失效時(shí)間準(zhǔn)確地定位到當(dāng)前時(shí)間后的任意一年、一月、一天、一小時(shí)、一分、一秒。 2)now+法 先舉一個(gè)例子: Response.Cookies(“LastView”).Expires = now+1 這 條語(yǔ)句的功能是:把Cookie的失效時(shí)間限制到1天后的同一時(shí)刻。這里的1代表1天,即24小時(shí)。由于now代表當(dāng)前Web服務(wù)器的系統(tǒng)時(shí)間,包括年、 月、日、時(shí)、分、秒,則該語(yǔ)句所表達(dá)得Cookie 的失效日期在明天的同一時(shí)、分、秒上。若改成now+2則表示此Cookie 的失效日期在兩天后的同一時(shí)、分、秒上;now+30表示此Cookie 的失效日期在一個(gè)月后的同一時(shí)、分、秒上;now+30*2表示此Cookie 的失效日期在兩個(gè)月后的同一時(shí)、分、秒上;now+365則表示此Cookie 的失效日期在一年后的同一時(shí)、分、秒上…… 當(dāng)把1分成24等 份,即該語(yǔ)句變成: Response.Cookies(“LastView”).Expires = now+1/24則表示把Cookie的失效時(shí)間限制到一小時(shí)后。在此基礎(chǔ)上,把1再分60等份,即把now+1/24改成 now+1/1440,則表示把Cookie的失效時(shí)間限制到一分鐘后。這里的1440是由24*60得來(lái)。同理,要把Cookie的失效時(shí)間限制到十分 鐘后,則把程序變成Response.Cookies(“LastView”).Expires = now+10/1440;要把Cookie的失效時(shí)間限制到一秒鐘后,則程序變成 Response.Cookies(“LastView”).Expires = now+1/86400。當(dāng)然,理論上把Cookie的失效時(shí)間限制到微秒級(jí)也是可以的。不過(guò),那就沒(méi)有什么實(shí)際意義了。另外,如果程序語(yǔ)句變成: Response.Cookies(“LastView”).Expires = now+1+1/1440則表示Cookie的失效時(shí)間為24小時(shí)零一分鐘后。