Http狀態的傳遞和儲存 之 Cookie

2021-06-20 12:21:07 字數 1602 閱讀 2611

cookie

cookie是儲存在客戶端的。

如果想自由的傳遞和讀取,用cookie。

cookie是和站點相關的,也就是只有儲存cookie的伺服器站點才能讀取和訪問。並且每次向伺服器請求的時候除了傳送表單引數外,還會將和站點相關的所有cookie都提交給伺服器,是強制性的。cookie也是儲存在瀏覽器端的,而且瀏覽器會在每次請求的時候都會把和這個站點相關的cookie提交到伺服器,並且將伺服器端返回的cookie更新回本地資料庫,

因此可以將資訊儲存在cookie中,然後在伺服器端讀取、修改。伺服器返回資料除了普通的html資料以外,還會返回修改的cookie,瀏覽器就把拿到的cookie值更新本地瀏覽器的cookie就可以。看報文。

在伺服器端控制cookie案例,實現記住使用者名稱的功能:

public partial class default : system.web.ui.page

// 從cookie讀取值

else if (!string.isnullorempty(read))}}

}

設定值的頁面:

response.setcookie(new httpcookie("username",username));
設定的cookie值會隨著響應報文頭一起傳送到瀏覽器(客戶端)。

讀取值的頁面:

username=request.cookies["username"].value;
瀏覽器在請求伺服器時,會自動把設定的cookie隨著請求報文頭髮送到伺服器端

伺服器端可以從請求報文頭中讀取到瀏覽器儲存的cookie值

如果不設定expires那麼生命週期則是關閉瀏覽器則終止,否則」最多「到expires的時候終止。

// 設定cookie的過期時間,預設為瀏覽器的關閉時間。

cookie.expires = datetime.now.adddays(1);

// 將cookie寫入到響應。

response.setcookie(cookie);

cookie的缺點:還不能儲存過多的資訊,機密資訊不能存。

cookie無法跨不同的瀏覽器。

cookie是可以被清除的,不能把不能丟的資料存到cookie中;

cookie尺寸有限制,一般就是幾k,幾百k。

不能把不能丟失的資料儲存到cookie中

只能把可有可無的資料儲存到cookie中,如記住使用者名稱。

狀態儲存和引數傳遞

這種情況按級別可以分為三種 應用程式層的狀態和資訊儲存,使用者層的狀態和資訊儲存,還有頁面級別的狀態和資訊的儲存。按位址分可以分為伺服器端和客戶端的儲存。session 只針對但前登陸使用者 儲存在伺服器端 cache 物件應用於所有使用者 有乙個儲存時間的字段 存在快取區 cookie 儲存小容量...

HTTP狀態 301,302,200 的概念和區別

301和302 http狀態有啥區別?301,302 都是http狀態的編碼,都代表著某個url發生了轉移,不同之處在於 301 redirect 301 代表永久性轉移 permanently moved 302 redirect 302 代表暫時性轉移 temporarily moved htt...

Http狀態301和302的區別

1 什麼是301轉向?什麼是301重定向?301轉向 或叫301重定向,301跳轉 是當使用者或搜尋引擎向 伺服器發出瀏覽請求時,伺服器返回的http資料流中頭資訊 header 中的狀態碼的一種,表示本網頁永久性轉移到另乙個位址。2 什麼是302重定向?302重定向又稱之為302代表暫時性轉移 t...