亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

溫故js系列(3)-cookie優(yōu)缺點(diǎn)&設(shè)置獲取刪除cookie

Vultr / 2717人閱讀

摘要:優(yōu)缺點(diǎn)優(yōu)點(diǎn)只在中存放不敏感數(shù)據(jù),即使被盜也不會有重大損失??刂频纳?,使之不會永遠(yuǎn)有效。極高的擴(kuò)展性和可用性,使用簡單,操作方法方便缺點(diǎn)數(shù)量和長度的限制。每個長度不能超過,否則會被截掉。設(shè)置一般主要設(shè)置名字和值有效期路徑域名是否安全傳輸。

前端學(xué)習(xí):教程&開發(fā)模塊化/規(guī)范化/工程化/優(yōu)化&工具/調(diào)試&值得關(guān)注的博客/Git&面試-前端資源匯總

歡迎提issues斧正:cookie

JavaScript--cookie

cookie可以像身份證一樣在客戶端請求服務(wù)器的時候確定信息。也可以在客戶端分擔(dān)服務(wù)端的壓力,做很多判斷和存儲信息。

cookie 優(yōu)缺點(diǎn)

優(yōu)點(diǎn):
1.只在cookie中存放不敏感數(shù)據(jù),即使被盜也不會有重大損失。
2.控制cookie的生命期,使之不會永遠(yuǎn)有效。就算被盜了偷盜者很可能拿到的是一個過期的cookie。
3.cookie幫助服務(wù)端承擔(dān)了很大的壓力,可以利用cookie在和客戶端做很多判斷而不應(yīng)經(jīng)過服務(wù)端。
4.極高的擴(kuò)展性和可用性,使用簡單,操作方法方便
缺點(diǎn):
1.cookie數(shù)量和長度的限制。每個cookie長度不能超過4KB,否則會被截掉。IE下每個domain最多只能有50條cookie(IE6是20條),F(xiàn)irefox最多50個cookie,chrome和Safari沒有做硬性限制,IE和Opera 會清理近期最少使用的cookie,F(xiàn)irefox會隨機(jī)清理cookie。
2.安全性問題。這是cookie一個隱患,如果cookie被人攔截了,那人就可以取得所有的session信息。即使加密也與事無補(bǔ),因?yàn)閿r截者并不需要知道cookie的意義,他只要原樣轉(zhuǎn)發(fā)cookie就可以達(dá)到目的了。
3.有些狀態(tài)不可能保存在客戶端。例如,為了防止重復(fù)提交表單,我們需要在服務(wù)器端保存一個計數(shù)器。如果我們把這個計數(shù)器保存在客戶端,那么它起不到任何作用。所以還是有一定的局限性。

設(shè)置cookie

一般主要設(shè)置cookie名字和值、cookie有效期、路徑、域名、是否安全傳輸。
原生方法:

document.cookie="key="+value;

封裝方法:

function setCookie(key, value, expires, path, domain, secure) {     
    var cookieText = encodeURIComponent(key) + "=" + encodeURIComponent(value);     
    if (expires instanceof Date) {         
        cookieText += "; expires=" + expires;     
    }     
    if (path) {         
        cookieText += "; expires=" + expires;     
    }     
    if (domain) {         
        cookieText += "; domain=" + domain;     
    }     
    if (secure) {         
        cookieText += "; secure";     
    }     
    document.cookie = cookieText; 
} 

JQuery方法(JQuery沒有封裝cookie方法,需要下載基于JQuery的插件jquery.cookie.js):

$.cookie("key","value",{
    expires:7,
    path:"/",
    domain: "xxx.com",
    secure: false
});
獲取cookie

原生方法:

var cookieStr = document.cookie;  //cookieStr=="username=Xzavier;password=123456;sex=man"

這樣獲得了所有的cookie,是一個字符串。根據(jù)需要選取,比如:

var username=document.cookie.split(";")[0].split("=")[1];
var password=document.cookie.split(";")[1].split("=")[1];

封裝方法:

function getCookie(key) {     
    var cookieName = encodeURIComponent(key) + "=";     
    var cookieStart = document.cookie.indexOf(cookieName);     
    var cookieValue = null;     
    if (cookieStart > -1) {         
        var cookieEnd = document.cookie.indexOf(";", cookieStart);         
        if (cookieEnd == -1) {             
            cookieEnd = document.cookie.length;         
        }         
        cookieValue = decodeURIComponent(document.cookie.substring(cookieStart + cookieName.length, cookieEnd));     
    }     
    return cookieValue; 
} 

JQuery方法:

$.cookie(‘key’); //value?value:null
刪除cookie

原生方法:

document.cookie = "key=value;expires=" + new Date(0); //時間可以是現(xiàn)在以及現(xiàn)在之前

封裝方法:

function unsetCookie(key) {     
    document.cookie = key + "= ; expires=" + new Date(0); 
} 

JQuery方法:

$.cookie(‘key’,null);

其他參數(shù)設(shè)置:

$.cookie("key", value, {
    expires: new Date(0),
    path: "/",
    domain: "xxx.com"
});

cookie在持久保存客戶端數(shù)據(jù)提供了方便,分擔(dān)了服務(wù)器存儲的負(fù)擔(dān),雖然有局限性,但是不可替代的。使用的方法也非常簡單,但平時使用cookie的時候也需要多多注意安全性。

jquery.cookie.js下載:jquery.cookie.js
cookie弊端參考:cookie弊端

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/79907.html

相關(guān)文章

  • 溫故js系列(6)-DOM

    摘要:相同之處標(biāo)準(zhǔn)的與是同步的。公認(rèn)的非自定義的特性會被以屬性的形式添加到對象中。不過傳遞給的特性名與實(shí)際的特性名相同。如,,,,等事件處理程序。最好控制在最合理的范圍內(nèi)。返回了元素大小,默認(rèn)單位是。 前端學(xué)習(xí):教程&開發(fā)模塊化/規(guī)范化/工程化/優(yōu)化&工具/調(diào)試&值得關(guān)注的博客/Git&面試-前端資源匯總 歡迎提issues斧正:DOM JavaScript-DOM DOM簡介 DOM(Do...

    xiaochao 評論0 收藏0
  • 溫故js系列(12)-ajax&&優(yōu)缺點(diǎn)&&node后端

    摘要:接收響應(yīng)當(dāng)請求發(fā)送到服務(wù)器端,收到響應(yīng)后,響應(yīng)的數(shù)據(jù)會自動填充對象的屬性。一般而已狀態(tài)代碼為作為成功的標(biāo)志。必要時,可以將查詢字符串參數(shù)追加到的末尾,以便提交給服務(wù)器。后端實(shí)現(xiàn)可以自學(xué)一點(diǎn)后端知識,便于學(xué)習(xí)。 前端學(xué)習(xí):教程&開發(fā)模塊化/規(guī)范化/工程化/優(yōu)化&工具/調(diào)試&值得關(guān)注的博客/Git&面試-前端資源匯總 歡迎提issues斧正:Ajax JavaScript-Ajax&&no...

    LiangJ 評論0 收藏0
  • 溫故知新之JS基礎(chǔ)

    摘要:訪問屬性是通過操作符完成的,但這要求屬性名必須是一個有效的變量名小紅的屬性名不是一個有效的變量,就需要用括起來。閉包應(yīng)用封裝私有變量箭頭函數(shù)箭頭函數(shù)相當(dāng)于匿名函數(shù),并且簡化了函數(shù)定義。 數(shù)據(jù)類型 NAN NaN === NaN; // false 唯一能判斷NaN的方法是通過isNaN()函數(shù): isNaN(NaN); // true 浮點(diǎn)數(shù)的相等比較: 1 / 3 === (...

    Dr_Noooo 評論0 收藏0
  • 溫故js系列(14)-閉包&垃圾回收&內(nèi)存泄露&閉包應(yīng)用&作用域鏈&

    摘要:該對象包含了函數(shù)的所有局部變量命名參數(shù)參數(shù)集合以及,然后此對象會被推入作用域鏈的前端。如果整個作用域鏈上都無法找到,則返回。此時的作用域鏈包含了兩個對象的活動對象和對象。 前端學(xué)習(xí):教程&開發(fā)模塊化/規(guī)范化/工程化/優(yōu)化&工具/調(diào)試&值得關(guān)注的博客/Git&面試-前端資源匯總 歡迎提issues斧正:閉包 JavaScript-閉包 閉包(closure)是一個讓人又愛又恨的somet...

    Amio 評論0 收藏0
  • html&&css

    摘要:標(biāo)準(zhǔn)模式的排版和運(yùn)作模式都是以該瀏覽器支持的最高標(biāo)準(zhǔn)運(yùn)行。這種合并外邊距的方式被稱為折疊,并且因而所結(jié)合成的外邊距稱為折疊外邊距??刂票韱慰丶慕脿顟B(tài)。首先,巧妙的使用這一標(biāo)記,將游覽器從所有情況中分離出來。 1.Doctype作用?標(biāo)準(zhǔn)模式與兼容模式各有什么區(qū)別 聲明位于位于HTML文檔中的第一行,處于?標(biāo)簽之前。告知瀏覽器的解析器,用什么文檔標(biāo)準(zhǔn)解析這個文檔。DOCTYPE不存在...

    gggggggbong 評論0 收藏0

發(fā)表評論

0條評論

Vultr

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<