Trang web nơi tôi làm việc được tạo thành từ một số dự án (được viết bằng một số ngôn ngữ). Ngay bây giờ chúng ta phải sử dụng một số mã vụng về trong chuỗi truy vấn và biến phiên để giữ cho một người đăng nhập khi họ đi từ dự án đến dự án. Vì cookie là tên miền cụ thể, chúng tôi đang cố gắng chuyển đổi chúng vì chúng có thể được đặt trong một dự án bằng một ngôn ngữ nhưng được truy cập bởi một dự án khác (trên cùng một tên miền) bằng ngôn ngữ khác.Cookie hoạt động như thế nào trong ASP.NET?
Tuy nhiên, tôi đang gặp sự cố khi thay đổi giá trị của cookie và xóa chúng. Hoặc cụ thể hơn, tôi gặp sự cố khi có bất kỳ thay đổi nào tôi thực hiện đối với thanh cookie.
Ví dụ trong mã logout tôi:
if (Request.Cookies["thisuserlogin"] != null)
{
HttpCookie myCookie = new HttpCookie("thisuserlogin");
myCookie.Value = String.Empty;
myCookie.Expires = DateTime.Now.AddDays(-1d);
Response.Cookies.Add(myCookie);
Response.Cookies.Set(myCookie);
litTest.Text = myCookie.Expires.ToString() + "<br />" + Request.Cookies["thisuserlogin"].Expires.ToString();
}
tôi gió lên với một dòng là ngày hôm qua và dòng tiếp theo là 1/1/0001 12:00:00 mặc dù họ NÊN được cùng một cookie. Vậy tại sao mặc dù cookie được đặt, giá trị của nó không thay đổi? Có cách nào để buộc máy tính của người dùng cập nhật giá trị của cookie, kể cả xóa không?
Cảm ơn bạn rất nhiều. PS Bất kỳ URL nào bạn có thể cung cấp để cung cấp cho một mồi dễ hiểu cho cookie sẽ được đánh giá cao.
Tôi chỉnh sửa các tiêu đề vì cookie không C# cụ thể. ASP.NET là thích hợp hơn. – usr