解決HTTP的無狀態問題

2021-08-04 21:30:48 字數 585 閱讀 7878

1、通過cookies儲存狀態資訊

client

—————-請求1—————————>

<————–響應1 + set cookie————

—————-請求2 + cookie—————>

server

通過cookies,伺服器就可以清楚的知道請求2和請求1來自同乙個客戶端。

2、通過session儲存狀態資訊

當程式需要為某個客戶端的請求建立乙個session的時候,伺服器首先檢查這個客戶端的請求裡是否已包含了乙個session標識 - 稱為 session id;

如果已包含乙個session id則說明以前已經為此客戶端建立過session,伺服器就按照session id把這個 session檢索出來使用(如果檢索不到,可能會新建乙個);

如果客戶端請求不包含session id,則為此客戶端建立乙個session並且生成乙個與此session相關聯的session id,session id的值應該是乙個既不會重複,又不容易被找到規律以仿造的字串,這個session id將被在本次響應中通過cookie返回給客戶端儲存。

3、session和cookie區別

HTTP協議 無狀態

blog 個人 目錄cookie和session http是一種不儲存狀態,即無狀態 stateless 協議。http協議自身不對請求和響應之間的通訊狀態進行儲存。也就是說在http這個級別,協議對於傳送過的請求或響應都不做持久化處理。可以理解為,瀏覽器傳送請求給伺服器時,伺服器響應請求 但同乙個...

viewstate存值問題(http無狀態)

前台 12 34 asp buttonid button3 runat server text 單擊 onclick button3 click br asp labelid label4 runat server 後台 12 3456 78privateinti 0 下面的方法不管單擊幾次按鈕,都...

HTTP無狀態協議詳解

概述 http協議是無狀態的。無狀態是指協議對於事務處理沒有記憶能力,這意味著如果後續處理需要前面的資訊,則它必須重傳,這樣可能導致每次連線傳送的資料量增大。無狀態的根本原因是 瀏覽器與伺服器是使用socket套接字進行通訊的,伺服器將請求結果返回給瀏覽器之後,會關閉當前的socket連線,而且伺服...