簡體   English   中英

在使用Cookie登錄時記住我

[英]Remember me in Login with Cookies

我嘗試用cookie記住我,但是我無法成功。它會引發null引用異常。 我該如何解決?

在pageload方法中

   if (!string.IsNullOrEmpty(Request.Cookies["mail"].Value) && !string.IsNullOrEmpty(Request.Cookies["pass"].Value)) {

        TextBox1.Text = Request.Cookies["mail"].Value;

        TextBox2.Text = Request.Cookies["pass"].Value;}
    }

在CheckedChanged方法中

    if (CheckBox1.Checked == true)
    {
        Response.Cookies["mail"].Value = TextBox1.Text;
        Response.Cookies["pass"].Value = TextBox2.Text;
     }

更改

if (!string.IsNullOrEmpty(Request.Cookies["mail"].Value) && 
    !string.IsNullOrEmpty(Request.Cookies["pass"].Value))

通過

if (Request.Cookies["mail"] != null && 
    Request.Cookies["pass"] != null &&
    !string.IsNullOrEmpty(Request.Cookies["pass"].Value)
    !string.IsNullOrEmpty(Request.Cookies["mail"].Value))

如果Request.Cookies["mail"]Request.Cookies["pass"]為null, if將引發您描述的異常。

另一個建議:如果您使用的是Forms Auhentication ,則可以使用內置的類來支持您的登錄名和相關功能。 在一個不好的策略中,重新發明與安全性相關的輪子。

例如,我看到您將密碼以純文本格式存儲在Cookie上。 這是一個非常糟糕的主意。

暫無
暫無

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

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