簡單封裝瀏覽器 cookie 工具類

2021-09-20 00:15:55 字數 2347 閱讀 2902

目前主流瀏覽器一般都支援 cookie ,以下對 cookie 的操作進行簡單封裝,以方便使用

import  from 'assets/scripts/config/config'

import from 'assets/scripts/tools'

/** * cookies操作類

*/export default

newclass cookie

this.expiresmultiplier = 60 * 60 * 24

this.prefix = storageprefix

} /**

* 根據key獲取cookie的值

* @param key 鍵

* @returns 值

*/get(key)

if (typeof key === 'object')

let cookies = this.all()

let value = cookies[this.prefix + key]

try catch (e)

}return value

} /**

* 設定cookies

* @param key 鍵

* @param value 值

* @param options 選項

* @returns

*/set(key, value, options)

let expires = options.expires !== undefined ? options.expires : (this.defaults.expires || '')

let expirestype = typeof (expires)

if (expirestype === 'string' && expires !== '') else

if (expirestype === 'number')

if (expires !== '' && 'togmtstring'

in expires)

let path = options.path || this.defaults.path

path = path ? ';path=' + path : ''

let domain = options.domain || this.defaults.domain

domain = domain ? ';domain=' + domain : ''

let secure = options.secure || this.defaults.secure ? ';secure' : ''

if (options.secure === false) secure = ''

document.cookie = uri.encode(this.prefix + key) + '=' + uri.encode(json.stringify(value)) + expires + path + domain + secure

return

this

} /**

* 刪除cookie

* @param keys 刪除cookie的key

* @returns

*/remove(keys)

return

this

} /**

* 獲取所有的cookie

* @returns cookie物件

*/all()

let cookiearr = cookie.split('; ')

let result = {}

for (let i = 0, l = cookiearr.length; i < l; i++)

return result

}}

export default

newclass verify

// 驗證手機號碼是否正確, true/false

istel (tel) $/).test(tel)

} // 判斷是否是object物件

isobject (value)

// 判斷是否是陣列

isarray (value)

}

export default

newclass uri

encode (value)

}

// 本地儲存的字首

export const storageprefix = 'tshark_quick_storage_'

使用瀏覽器Cookie

cookie是有netscape瀏覽器1.0版引入的。netscape 的開發人員發明了cookie。1.cookie 是如何工作的?web伺服器建立乙個cookie時,乙個附加的http頭部在瀏覽器顯示頁面時被傳送到瀏覽器。http頭部類似如下形式 set cookie message hello...

瀏覽器 cookie 限制

一 瀏覽器允許每個網域名稱所包含的 cookie 數 microsoft 指出 internet explorer 8 增加 cookie 限制為每個網域名稱 50 個,但 ie7 似乎也允許每個網域名稱 50 個 cookie update to internet explorer s cooki...

瀏覽器cookie詳解

為什麼會有cookie web應用程式是使用http協議傳輸資料的。http協議是無狀態的協議。一旦資料交換完畢,客戶端與伺服器端的連線就會關閉,再次交換資料需要建立新的連線。這就意味著伺服器無法從連線上跟蹤會話。你可能會有這樣的經歷,登入乙個 的時候會提醒你要不要記住賬戶和密碼,這樣下次來你就不用...