1. 程式人生 > >cookie與session的作用與執行方式

cookie與session的作用與執行方式

cookie與session的作用與執行方式

問題:瀏覽器與服務器請求與返回過程中,cookie跟session有什麽用?

1.cookie

# 服務器端產生cookie,cookie是存在瀏覽器中;
# 瀏覽器在請求服務器端之後,服務器端想在瀏覽器端保存一些數據;
# 服務器就會創建一個cookie,在返回請求相應時,帶回到瀏覽器中;
>>>>
# 在用戶登錄時選擇‘記住用戶名‘,服務器端處理請求創建一個cookie;
# 將cookie帶到瀏覽器中,瀏覽器中就顯示這個用戶名;
# 第二次登錄的時候就攜帶這個cookie以及自己輸入的密碼,到服務器端;
# 服務器直接將cookie以及密碼寫到html裏;
# 響應返回給瀏覽器,顯示頁面;



2.session

# 保存用戶登錄狀態
# 瀏覽器端在首頁發出登錄請求,服務器端處理返回登錄頁面;
# 在瀏覽器端輸入用戶名與密碼,提交服務器端;
# 服務器端進行用戶名密碼檢測,進入登入狀態頁面;
# 在服務器端產生一個session值,以鍵值對方式存入數據庫中;
# 每一個鍵值對都存有一個sessionid來標記;
# # 註意:這裏的鍵值對中的key,是一對多的形式;
# # 每臺電腦都對服務器端進行訪問,沒有sessionid來標記的話,
# # 誰知道那個值是你這臺電腦的瀏覽器發出的?
# # 所以在產生一個session的同時,服務器端又產生一個cookie,
# # 來存儲{key(sessionid): value(num_id)};
# 服務器端返回這個cookie到瀏覽器;
# 當瀏覽器再次請求訪問頁面的時候,就會帶著這個cookie到服務器端;
# 服務器端發現這個存有sessionid的cookie時,
# 就會從數據庫中查詢/調取對應存好的session數據;
# 到request對象中,這個過程在中間鍵中執行;
# request.session[‘uname] = obama
# # 請求先到中間鍵,再到視圖;
# # 視圖中再從session裏取值;
# # 寫入頁面中;



cookie與session的作用與執行方式