摘要:簡介幾種常用屬性屬性值是類型,表示是否禁止客戶端,也就是網(wǎng)頁中使用操作默認(rèn)在瀏覽器中的可以通過查看對應(yīng)每一行后面的一欄是否被勾選來判斷,若被勾選,表示當(dāng)前,不能通過獲取。
Cookie 簡介
幾種常用屬性
httpOnly:屬性值是boolean類型,表示是否禁止客戶端,也就是網(wǎng)頁中使用js 操作cookie,默認(rèn)false,在瀏覽器中的可以
通過查看對應(yīng)每一行cookie后面的HTTP一欄是否被勾選來判斷,若被勾選,表示當(dāng)前cookie,不能通過
document.cookie 獲取。很多情況下獲取不到cookie 都是因為這個屬性導(dǎo)致的
構(gòu)成:name(名)和value(值),都必須被URL編碼。例如比較簡單的設(shè)置:
document.cookie = encodeURIComponent("name")+"="+encodeURIComponent("Nicholas")+";domain = .wrox.com;path=/";
可以設(shè)置多個web服務(wù)器共享 , domain 默認(rèn)是創(chuàng)建cookie 的網(wǎng)頁所在服務(wù)器。所以在試圖刪除非當(dāng)前域名,比如:當(dāng)前域名是 www.abc.com, 想要刪除domain是頂級域名,也就是domain = abc.com 的cookie,就必須在刪除對應(yīng)cookie時,設(shè)置對應(yīng)的domain,否則就無法刪除(刪除方法,一般都是 設(shè)置 cookie 對應(yīng)的expires 為 new Date() 或者 之前的任意時間)
path屬性默認(rèn)路徑會設(shè)置成“/”,指定與cookie 關(guān)聯(lián)在一起的網(wǎng)頁,例如,你可以指定cookie只能從
http://www.abc.com/123 才能訪問,那么在http://ww.abc.com 的頁面就不會發(fā)送cookie 信息。
**
secure屬性:默認(rèn)是沒有設(shè)置,指定后,cookie 只有在使用了SSL連接的時候才會發(fā)送到服務(wù)器。
expiress屬性:表示cookie何時應(yīng)該被刪除的時間戳,默認(rèn)情況下,瀏覽器會話結(jié)束后即將所有的cookie刪除,對應(yīng)的expiress 對
應(yīng)的值就是session,會話時間。GMT格式的日期(Wdy,DD-Mon-YYYY HH:MM:SS GMT)。
最后附帶cookie 的簡單封裝,更加全面的解釋可以查看《高程3》 第23章 離線應(yīng)用于客戶端存儲中的cookie 部分
export default { "get": function(cookie_name) { if (!cookie_name || cookie_name == "") { return null; } var reg = new RegExp("(^| )" + cookie_name + "=([^;]*)(;|$)"); var arr = document.cookie.match(reg); if (arr) { return unescape(arr[2]); } else { return null; } }, "set": function(cookie_name, cookie_val, time) { time = time || this.duration; if (!cookie_name || cookie_name == "") { return; } var cookie_str = cookie_name + "=" + escape(cookie_val) + ";"; if (time > 0) { var date = new Date(); date.setTime(date.getTime() + time); cookie_str += "expires=" + date.toGMTString()+";"; console.log(date.toGMTString()); } cookie_str += "path=/;"; document.cookie = cookie_str; }, "delete": function(cookie_name,domain) { if (!cookie_name || cookie_name == "") { return; } var date = new Date(0); // date.getDate(date.getDate() - 10000); if(domain === undefined) { document.cookie = cookie_name + "=; expires=" + date.toUTCString()+ ";path=/;"; }else { document.cookie = cookie_name + "=; expires=" + date.toUTCString()+ ";path=/;domain=" + domain+";"; } } }
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/87242.html
摘要:服務(wù)端設(shè)置好后,將會通過響應(yīng)頭返回給瀏覽器。注意是在中發(fā)送的,所以之前不能有任何輸出。數(shù)據(jù)存儲在客戶端,容易被攔截篡改,不安全。數(shù)據(jù)存放在服務(wù)端,安全。當(dāng)落入第三者時,服務(wù)端將無法分辨出是否是合法的請求。 Cookie 起源 當(dāng)初 W3C 在設(shè)計 Cookie 時實際上考慮的是為了記錄用戶在一段時間內(nèi)訪問 Web 應(yīng)用的行為路徑。 由于HTTP 協(xié)議是一種無狀態(tài)協(xié)議,當(dāng)用戶的一次訪問...
摘要:前端存儲簡介一種在前端保存數(shù)據(jù)的思想。為了保證前端性能,一般不會保存大量數(shù)據(jù)。在手動刪除前一直存在關(guān)閉當(dāng)前頁面后被清除可存放大小與服務(wù)器通信每次都在頭部信息中。 前端存儲 簡介 一種在前端保存數(shù)據(jù)的思想。第一次在頁面中的保存數(shù)據(jù),那么從第二次開始就可以使用了??梢允褂玫姆椒ㄓ校? cookie localeStorage sessionStorage ie的userData web s...
摘要:我們在這個類中的方法看到如下代碼,一個典型的過濾器,在這個中獲取的方法是。,整個初始化的過程總結(jié)下巧妙的使用了面向?qū)ο蟮慕涌诜绞?,為我們提供了各種各樣不同的存儲方式,一旦我們了解了存儲方式和加密規(guī)則,讓不同的容器進(jìn)行共享的目的也可以達(dá)到 前些天,為了解答一個問題,就去研究了Laravel的源碼,講講我的收獲:這個是問題源:http://segmentfault.com/q/101000...
閱讀 2627·2021-10-08 10:17
閱讀 1984·2021-09-06 15:02
閱讀 2667·2019-08-29 17:30
閱讀 2790·2019-08-29 13:24
閱讀 1652·2019-08-29 11:12
閱讀 3477·2019-08-28 17:52
閱讀 790·2019-08-26 11:30
閱讀 3728·2019-08-26 11:01