簡體   English   中英

ASP.Net中的Cookie

[英]Cookies in ASP.Net

我在一個頁面中設置了這樣一個cookie:

Request.Cookies["lang"].Value = "en-US";
Request.Cookies["lang"].Expires = DateTime.Now.AddDays(50); 

在另一頁上,我嘗試閱讀cookie:

string lang = Server.HtmlEncode(Request.Cookies["lang"].Value);

cookie不為null,但值為空字符串。 我究竟做錯了什么?

您應該使用Response.Cookies來設置cookie,並使用Request.Cookies來讀取從客戶端發回的任何cookie。

您問題中的代碼是在Request對象中設置cookie,而不是Response

客戶端是否啟用了Cookie? 您設置cookie的事實並不意味着客戶端支持它們並將其發回。

請記住,您正在處理兩個斷開連接的系統; 你的服務器沒有保持狀態,你對客戶端知之甚少。

如果我沒記錯的話,我認為您應該使用響應而不是請求,因為請求是發送給您的。 響應是指您想要將某些內容設置回客戶端瀏覽器。

編輯:您正在做的是修改該特定請求中的cookie,這有助於您在后續頁面上看不到的原因。 這不是將它們保存回客戶端。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM