Cookie là một tệp thông tin nhỏ được lưu trữ trên các máy của khách hảng(Client). Tập tin này nằm trên máy khách hàng tại địa chỉ:
"C:\Document and Settings\Currently_Login user\Cookie"
Nó được lưu trữ một vài thông tin của người dùng như Username, password, City hay PhoneNo... trên máy khách hàng.
Chúng ta cần phải gọi namespace cho nó là Systen.Web.HttpCookie trước khi chúng ta sử dụng Cookie
Loại Cookie?
1. Persist Cookie: Một cookie không bao giờ hết thời gian sử dụng gọi là Persist Cookie.
2. Non-Persist Cookie: Một cookie hết thời gian sử dụng gọi là Non-Persist Cookie.
Làm cách nào để tạo một Cookie?
Thực sự ta có thể dễ dàng tạo 1 cookie trong Asp.Net với sự hỗ trợ từ Response object hoặc HttpCookie
VD1:
HttpCookie userInfo = new HttpCookie("userInfo");
userInfo["UserName"] = "Annathurai";
userInfo["UserColor"] = "Black";
userInfo.Expires.Add(new TimeSpan(0, 1, 0));
Response.Cookies.Add(userInfo);
VD2:
Response.Cookies["userName"].Value = "Annathurai";
Response.Cookies["userColor"].Value = "Black";
Làm thế nào để lấy từ Cookie?
Thật dễ dàng để lấy giá trị cookie, bằng cách sử dụng Request object
VD1:
string User_Name = string.Empty;
string User_Color = string.Empty;
User_Name = Request.Cookies["userName"].Value;
User_Color = Request.Cookies["userColor"].Value;
VD2:
string User_name = string.Empty;
string User_color = string.Empty;
HttpCookie reqCookies = Request.Cookies["userInfo"];
if (reqCookies != null)
{
User_name = reqCookies["UserName"].ToString();
User_color = reqCookies["UserColor"].ToString();
}
Khi chúng ta đưa yêu cầu từ phía client đến máy chủ server, tiến trình máy chủ web gửi yêu cầu và đưa ra các thông tin như Header, Metadata, cookie,... Sau đó có thể làm tất cả mọi thứ với trình duyệt
Tài khoản chung của Cookie:
1. Domain => Những Cookie được sử dụng để liên kết tới tên miền
2. Secure => Chúng ta có thể bật cookie để thiết lập an toàn(HTTPS)
3. Value => Chúng ta có thể thao tác các cookie riêng lẻ
4. Values => Chúng ta có thể thao tác cookie với cặp giá trị khóa.
5. Expires => Sử dụng để thiết lập ngày hết hạn cho cookie.
Những thuận lợi của Cookie:
1. Nó xóa sạch đoạn văn bản mà người sử dụng có thể đọc nó.
2. Chúng ta có thể lưu trữ thông tin về sở thích người sử dụng trên máy client.
3. Nó dễ dàng duy trì.
4. Truy cập nhanh chóng.
Những nhược điểm của Cookie:
1. Nếu người sử dụng xóa các thông tin cookie, chúng ta sẽ không thể nào lấy lại được.
2. Không an toàn.
Mỗi yêu cầu sẽ thông tin cookie với trang.
Làm thế nào để xóa các thông tin cookie?
1. Chúng ta có thể xóa các thông tin cookie từ máy client trên thư mục cookie.
2. Thiết lập cookie hết hạn vào đối tượng.
userInfo.Expires = DateTime.Now.AddHours(1);
Nó sẽ xóa cookie trong vòng 1 giờ đồng hồ
Nguồn bài viết:
Dngaz.com