C# 不能取得cookie處理方案
發表時間:2023-07-28 來源:明輝站整理相關軟件相關文章人氣:
[摘要]C# 不能獲取cookie解決方案最經在搞一個使用cookie來登錄的系統,在調試環境是沒有任何問題,發布到服務器上就是不能登錄,使用 Firefox可以的,只要使用IE內核的就是不行,解決過程:清...
C# 不能獲取cookie解決方案
最經在搞一個使用cookie來登錄的系統,在調試環境是沒有任何問題,發布到服務器上就是不能登錄,使用 Firefox可以的,只要使用IE內核的就是不行,
解決過程:
清除瀏覽器的cookie,不行。
在源碼上顯示是否有寫入cookie,和能不能取到cookie,結果發現是不能取,起初懷疑是IE8的問題,Firefox可以的,在網上查了好多相關的內容都無非是沒有加超期,沒有加domain,這些都是沒有問題
最后仔細的研究了一下代碼
HttpCookie objCookie = new HttpCookie("ValidateCode");
objCookie.Value = str_ValidateCode;
objCookie.Path = "/";
objCookie.Expires = DateTime.Now.Add(new TimeSpan(0, 0, 1, 0)); //DateTime.Now.AddMinutes(1);
主要到紅色的字體沒有,問題就在這,這里是取的服務器時間,如果客戶端跟服務器時間相差1分鐘就問題了,你還沒有登錄就已經過期了,檢查一下服務器時間結果發現相差4分鐘,設置一下服務器時間,就可以登錄。
這樣不能解決根本問題,需要把這個過期時間取客戶端才可以。
學習教程快速掌握從入門到精通的電腦知識