Cookie解釋以及原理分析

2021-06-26 01:50:51 字數 1736 閱讀 9633

我們知道web**在客戶端儲存資料有三種形式:1. cookie   2. hidden(隱藏域) 3.querystring 其中viewstate什麼的都是通過第二種方式隱藏域儲存滴。

好了今天的主角是cookie(小甜餅)先看下cookie存在哪吧!首先,開啟執行對話方塊輸入cookies會開啟乙個資料夾沒錯這就是儲存cookies的地方(宣告:這裡只是儲存的ie瀏覽器的cookies,什麼谷歌、火狐什麼的存在他們所對應瀏覽器的安裝目錄中)。

先看一下怎麼新建乙個cookie吧!

第一行:建立乙個httpcookie物件,然後建構函式 給個cookie名稱

第二行:給這個cookie賦值---->因為cookie是以鍵值對儲存的 ex:username = 「admin」

第三行:設定此cookie的失效時間,此值是乙個具體的失效時間datetime型別   上面是設定兩個小時後失效

第四行:將cookie寫到cookie中,即寫在響應報文頭中一會分析原理的時候會講到。

行設定了cookice了那我怎麼讀它呢?廢話少說上**

request.cookies["

username

"].value

呵呵,是不是很簡單,就是在請求中有個cookices集合然後通過索引的方式訪問他---->把它比較成request.form["....."]  這句是不是經常使。

好了會建立了也會獲得了 那咱下面就分析一下原理

大家想下伺服器是通過什麼傳輸資料的?socket沒錯,前面的文章不是通過socket實現過乙個簡單的web伺服器嗎 嘿嘿 ,然後socket只是傳輸層的東東,那它

如果把資料傳送到客戶端瀏覽器的呢,在者說瀏覽器是通過什麼把資料(請求)傳送給伺服器的呢?  是不是通過報文啊  客戶端通過請求報文想服務端傳送請求,然

後呢伺服器接受到客戶端的請求,又通過響應報文將服務端的資料傳送給伺服器。那麼今天的cookice就是通過報文傳輸的 下面通過圖繼續講解

設定cookie  將服務端設定的cookice 傳給客戶端瀏覽器,其中還包括了失效時間

從圖中可以看出服務端設定cookice是通過響應報文頭將cookice傳輸給瀏覽器滴,然後客戶端呢 客戶端是通過請求報文頭將cookice傳輸給服務端滴

注意:1. 因為cookice是儲存在客戶端的資料,如果有敏感的資料必須在服務端加密後然後在儲存

2. cookice在客戶端有兩種儲存形式:(1)儲存在硬碟上(設定了cookice的失效時間的情況下) (2)儲存在記憶體中(在沒有設定cookice的失效時間的情況下)

3. 如果服務端的cookice和客戶端已有的cookice重名則會覆蓋原有的cookice

4. 如果要想清除某個cookice的話可是設定它的失效時間小於當前的日期即可cookie.expires = datetime.now.adddays(-1);

狀態保持 Cookie解釋以及原理分析

狀態保持 cookie解釋以及原理分析 我們知道web 在客戶端儲存資料有三種形式 1.cookie 2.hidden 隱藏域 3.querystring 其中viewstate什麼的都是通過第二種方式隱藏域儲存滴。好了今天的主角是cookie 小甜餅 先看下cookie存在哪吧!首先,開啟執行對話...

cookie 和session的原理以及異同

一 區別 1.儲存位置不同 cookie資料存放在客戶的瀏覽器中,session資料存在伺服器當中。2.安全程度不同 cookie不是很安全,別人可以分析存放在本地的cookie並進行cookie欺騙,考慮到安全應當使用session。3.資料儲存大小不同 cookie的儲存不能超過4k,而sess...

jmp用法以及原理分析

段內轉移和段間轉移 轉移指令 控制cpu執行記憶體中的某行 可以通過修改ip或者同時修改cs ip 只修改ip的稱為段內轉移 jmp ax 相當於 mov ax,ip jmp ax 同時修改cs ip的叫段間轉移 jmp 1000 0 這是debug語法,只能在debug中使用 段內轉移分為短轉移和...