none
登陆验证,关于cookie的问题 RRS feed

  • 问题

  • 我做了一个网站,想实现,如果用户未登录直接打开某一页面,则跳转到登陆页面。使用的是cookie,在每个页面的page_load事件里,判断cookie是否有值,

     if (Response.Cookies["username"].Value != null)
                {
                    Label42.Visible = false;
                    clear();
                    BindItem();
                }
                else
                {
                    Response.Redirect("Login.aspx");

                }


    但是现在没登陆时打开页面,总是提示:cookie没有实例化,是不是不应该在这里判断cookie的值呢?请大家帮帮忙!谢谢!

    2009年5月14日 12:46

答案

全部回复

  • 我想用cookie来验证用户是否登录,如果没有登陆并直接进入到别的页面时,页面跳转到登陆界面,我在每个页面的page_Load事件里面写上
     if (Response.Cookies["username"].Value != null)
                {
                    Label42.Visible = false;
                    clear();
                    BindItem();
                }
                else
                {
                    Response.Redirect("Login.aspx");

                }

    但是一直错误,说cookie没有实例化,这是为什么,是不是不该在这里来判断,那应该怎么实现这个功能呢,希望大家帮帮忙,谢谢

    2009年5月14日 12:53
  • 你好!
         检查一下你是否添加了username这个cookies!
         这样检查试试:
     if (Response.Cookies["username"]!= null)
                {
                    Label42.Visible = false;
                    clear();
                    BindItem();
                }
                else
                {
                    Response.Redirect("Login.aspx");

                }


        
    周雪峰
    2009年5月14日 13:29
    版主
  •  if (Request .Cookies["username"] != null)
    【孟子E章】
    2009年5月15日 0:55
    版主
  • 1.你要读取Cookie,应该使用Request.Cookies而非Response.Cookies。

    2.你必须先判断Request.Cookies["username"]是否为null。
    Microsoft ASP.NET MVP
    2009年5月15日 1:48
    版主
  • 谢谢你的帮助!
    2009年5月19日 4:13