Cookie和Session

問題一:Cookie能解決什么問題晶通?(用戶跟蹤胁孙,解決HTTP協(xié)議無狀態(tài)問題)
1.URL重寫
http://www.abc.com/path/resource?foo=bar
2.隱藏域(隱式表單域)- 埋點

<form action="" method="post">
  <input type="hiden" name="foo" value="bar">
</form>

3.Cookie-瀏覽器中的臨時文件(文本文件)-BASE64
問題2:Cookie和Session之間的關系是 什么只锻?(Session的標識通過Cookie保存和傳輸)

Session的配置

Session對應的中間件:django.contrib.sessions.middleware.SessionMiddleware
2.Session引擎:

  • 基于數(shù)據(jù)庫(默認模式)
INSTALLED_APPS = [
  'django.contrib.sessions',
]
  • 基于緩存(推薦使用)
SESSION_ENGINE = ‘django.contrib.sessions.backends.cache’
SESSION_CACHE_ALIAS = 'session'
  • 基于文件(基本不考慮)
  • 基于Cookie(不靠譜)
SESSION_ENGINE = 'django.contrib.sessions.backends.signed_cookies'

3.Cookie相關的配置傅是。

SESSION_COOKIE_NAME = ‘django_session_id’
SESSION_COOKIE_AGE = 1209600
#如果設置為True团驱,Cookie就是基于瀏覽器窗口的Cookie沮尿,不會持久化
SESSION_EXPIRE_AT_BROWSER_CLOSE = False
SESSION_SAVE_EVERY_REQUEST = False
SESSION_COOKIE_HTTPONLY = True

4.sessioln的屬性和方法丛塌。

  • session_key/session_data/expire_data
  • __getitem__/__settime__/__delitem__/contains
  • flush() - 銷毀會話
  • set_test_cookie()/test_cookie_worked/
    delete_test_cookie()-測試瀏覽器是否支持Cookie(提示用戶如果瀏覽器禁用Cookie可能會影響網(wǎng)站的使用)

5.session的序列化
SESSION_SERIALIZER = 'django.contrib.sessions.serializers.JSONSerializer'

  • JSONSrializer(1.6及以后默認) - 如果想將自定義的對象放到Session中,會遇到‘Object of type ‘XXX’ is not JSON serializable’的問題(如果配置使用Redis保存Session畜疾,django-redis使用了Pickie序列化赴邻,這個問題就不存在了)。
  • PickieSerializer(1.6以前的默認)- 因為安全問題不推薦使用啡捶,但是只要不去反序列化用戶構(gòu)造的惡意和Payload其實也沒有什么風險姥敛。關于這種方式的安全漏洞,可以參考《Python Pickle的任意代碼執(zhí)行漏洞實踐和Payload構(gòu)造》一文或《軟件架構(gòu)-Python語言實現(xiàn)》上關于這個問題的講解瞎暑。
    說明:如果使用了django-redis整合Redis作為session的存儲引擎徒溪,那么憂郁django-redis又封裝了一個PickieSerializer來提供系列化,所以上述問題不會存在金顿,且Redis中保存的value是pickie序列化之后的結(jié)果
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末臊泌,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子揍拆,更是在濱河造成了極大的恐慌渠概,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,820評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異播揪,居然都是意外死亡贮喧,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,648評論 3 399
  • 文/潘曉璐 我一進店門猪狈,熙熙樓的掌柜王于貴愁眉苦臉地迎上來箱沦,“玉大人,你說我怎么就攤上這事雇庙∥叫危” “怎么了?”我有些...
    開封第一講書人閱讀 168,324評論 0 360
  • 文/不壞的土叔 我叫張陵疆前,是天一觀的道長寒跳。 經(jīng)常有香客問我,道長竹椒,這世上最難降的妖魔是什么童太? 我笑而不...
    開封第一講書人閱讀 59,714評論 1 297
  • 正文 為了忘掉前任,我火速辦了婚禮胸完,結(jié)果婚禮上书释,老公的妹妹穿的比我還像新娘。我一直安慰自己赊窥,他們只是感情好爆惧,可當我...
    茶點故事閱讀 68,724評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著誓琼,像睡著了一般检激。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上腹侣,一...
    開封第一講書人閱讀 52,328評論 1 310
  • 那天叔收,我揣著相機與錄音,去河邊找鬼傲隶。 笑死饺律,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的跺株。 我是一名探鬼主播复濒,決...
    沈念sama閱讀 40,897評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼乒省!你這毒婦竟也來了巧颈?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,804評論 0 276
  • 序言:老撾萬榮一對情侶失蹤袖扛,失蹤者是張志新(化名)和其女友劉穎砸泛,沒想到半個月后十籍,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,345評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡唇礁,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,431評論 3 340
  • 正文 我和宋清朗相戀三年勾栗,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片盏筐。...
    茶點故事閱讀 40,561評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡围俘,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出琢融,到底是詐尸還是另有隱情界牡,我是刑警寧澤,帶...
    沈念sama閱讀 36,238評論 5 350
  • 正文 年R本政府宣布吏奸,位于F島的核電站欢揖,受9級特大地震影響陶耍,放射性物質(zhì)發(fā)生泄漏奋蔚。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,928評論 3 334
  • 文/蒙蒙 一烈钞、第九天 我趴在偏房一處隱蔽的房頂上張望泊碑。 院中可真熱鬧,春花似錦毯欣、人聲如沸馒过。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,417評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽腹忽。三九已至,卻和暖如春砚作,著一層夾襖步出監(jiān)牢的瞬間窘奏,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,528評論 1 272
  • 我被黑心中介騙來泰國打工葫录, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留着裹,地道東北人。 一個月前我還...
    沈念sama閱讀 48,983評論 3 376
  • 正文 我出身青樓米同,卻偏偏與公主長得像骇扇,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子面粮,可洞房花燭夜當晚...
    茶點故事閱讀 45,573評論 2 359

推薦閱讀更多精彩內(nèi)容