正確理解web互動中的cookie與session

2021-06-22 17:30:08 字數 1938 閱讀 7910

cookie儲存在客戶端的純文字檔案

使用者請求伺服器指令碼

指令碼設定cookie內容 並 通過http-response傳送cookie內容到客戶端並儲存在客戶端本地

客戶端再次傳送http請求的時候會將本地的cookie內容新增到http請求頭髮送給伺服器,伺服器端指令碼可以呼叫cookie內容

流程如圖

cookie.php 指令碼

客戶端第一次訪問(傳送http請求)指令碼設定cookie(setcookie)到客戶端 並不會顯示cookie內容

此時客戶端的cookie檔案已經生成

cookie內容

客戶再次傳送http請求的時候已經傳送cookie過去了

這個是請求頭資訊裡面的內容 cookie加在http請求頭髮送到伺服器

伺服器顯示cookie內容到客戶端的瀏覽器裡面

session是儲存在伺服器的檔案 cookie內容儲存在客戶端,存在被客戶篡改的情況,session儲存在客戶端防止被使用者篡改的情況

cookie是與使用者的乙個聯絡(乙個使用者乙個cookie)、session只是將內容儲存在伺服器與使用者的聯絡還是cookie

session建立的時候將傳送乙個cookie到客戶端 cookie內容儲存的是phpsessid(用以唯一識別使用者),內容儲存在temp資料夾下命名為 sess_phpsessid

session內容可以直接被指令碼訪問

session的**

使用者訪問的時候可以直接顯示session內容

此時在伺服器上生成了對應的session檔案

使用者瀏覽器中的cookie裡面儲存的是對應的phpsessid

傳送的cookie內容

注意到 cookie傳送的正好是phpsessid 對應到伺服器的session

setcookie(name, value, expire, path, domain, secure);

/*name cookie鍵名

value cookie值

expire cookie在客戶端過期的時間

path 伺服器路徑

domain 網域名稱

secure 是否https通道

--------------------------

當使用者請求的uri符合

secure + domian + path 這個路徑

cookie才會被傳送給伺服器

*/

正確理解Java中的Future

說到這個相信很多剛入行的程式設計師,對這個並不是很熟悉,這個單詞的意思是未來 簡單的給它闡述一下 這是乙個物件,儲存的耗時操作給它賦的值,我們先拿到他的引用,等他有值了,就可以使用。通俗的講,就是我拿到乙個變數的引用,裡面沒有值,子執行緒計算完了,把值賦值給它,我後面就可以用,不用我一直等子執行緒執...

Linux inode的正確理解

理解inode,要從檔案儲存說起。檔案儲存在硬碟上,硬碟的最小儲存單位叫做 扇區 sector 每個扇區儲存512位元組 相當於0.5kb 作業系統讀取硬碟的時候,不會乙個個扇區地讀取,這樣效率太低,而是一次性連續讀取多個扇區,即一次性讀取乙個 塊 block 這種由多個扇區組成的 塊 是檔案訪問的...

正確理解CSS中的margin合併

最近在學習很多開發過程中容易忽悠但是又很重要的知識點,很多時候用的少不代表它不重要,這裡將它們寫出來以記錄,如果有寫的不好的地方請指正。margin合併是指塊級元素的上外邊距與下外邊距有時會合併為單個外邊距,有兩點需要理解。1.在塊級元素中,不包括浮動和絕對定位元素 2.只發生在和當前文件流方向的相...