zoukankan      html  css  js  c++  java
  • 复习asp.net form验证

    http://www.cnblogs.com/linlin/archive/2010/09/08/1821438.html 

    读书时最常用判断登陆的就是登陆时用cookie或session存储,然后每个页面判断是否登陆。

    这样做每个页面都要判断很麻烦。

    毕业半年了,这半年学会了用类,重写事件OnLoad()来,这样每个页面继承这个类!这个类里可以判断是否登陆,判断权限等等一些操作

    可是如果只有登陆验证没有权限其他操作的话!这样用form验证比继承类来得更方便,这个也是今天才想到的!由于读书时注重玩,结果好多没注意听。今天重新学习了下form验证

    首先配置web.config

     

     

    在systen.web内配置
    复制代码

    <authentication mode="Forms">
          
    <forms loginUrl="admin/Login.aspx" defaultUrl="admin/Default.aspx" timeout="1"></forms>
    </authentication>
    <!--
          name 属性指定验证所需要的 cookie 的名称,默认值是“.ASPXAUTH”,如果在一个服务器上下挂了多个 Web 应用程序,必须重新指定该名称,因为每个应用程序都需要唯一的 cookie。

          loginUrl 属性指定登录用的页面,用于提供用户名和密码,默认值是“login.aspx”。该页面可以和需要提供身份验证才能访问的页面放在同一个目录下(呵,我原以为这个页面要放在单独的可公开访问的目录下)。

          defaultUrl 属性指定登入后跳转到的页面,默认值是“default.aspx”,当然你也可以跳转到用户登入前的前一个页面,并且这是 .NET 的默认实现。
          timeout cookie过期时间
    -->
    复制代码

     

     

    复制代码
    <!--System.web同级-->
    <location path="admin">
        
    <system.web>
          
    <authorization>
            
    <deny users="?"/><--拒绝匿名用户-->
          
    </authorization>
        
    </system.web>
    </location>
    复制代码

     

    我做的后台单独放在一个文件夹内!这样只要给这个文件夹设置权限就可以,如果未登陆而浏览这个文件夹内的任意文件会跳转到登陆页面,登陆成功跳转到ReturnUrl,也就是你之前访问的页面。如果ReturnUrl为空,跳转到defaultUrl,也就是你配置的默认url

    接下来是代码

     

    代码
    复制代码
    if (TextBox1.Text == "adminss" && TextBox2.Text == "admin")
            {
               FormsAuthentication.RedirectFromLoginPage(TextBox1.Text, CheckBox1.Checked);
                //CheckBox1.Checked如果为true将会持久保存cookie,直到cookie失效
                //后面可以接Response.Redirect(“xx.aspx”),会跳转到你指定的页面,可是并不可以没有验证就跳转!
                
    //如果没有上面的验证票而直接跳转会失败,因为没有建立身份验证票
                
    //Response.Redirect(Context.Request["ReturnUrl"]);
                //Response.Redirect("xx.aspx");
            }
            
    else
                Response.Write(
    "用户名或密码错误!");
    复制代码

     

    有些页面要根据判断用户是否登陆呈现不同的排版

     

    复制代码
    if(User.Identity.IsAuthenticated)//这个是用来判断用户是否登陆
    {
       
    //已登陆;
    }
    else
    {
       
    //未登陆
    }
    复制代码

     

     

    有时还要取用户的用户名显示在页面上

     

     

    User.Identity.Name//获取登陆名,其实就是之前FormsAuthentication.RedirectFromLoginPage(TextBox1.Text, CheckBox1.Checked);中的TextBox1.Text;

     

     

    好了,之后就是退出代码了

     

    FormsAuthentication.SignOut();

     

    这是小弟早上复习来的!如果有什么不对的地方希望大家可以帮我指正下! 

  • 相关阅读:
    AOP与IOC的概念(即spring的核心)
    Md5密码加密的使用
    all-mobile.js
    config.js
    login.css
    template.css
    index.js
    view.js
    admin.css
    admin.js
  • 原文地址:https://www.cnblogs.com/blosaa/p/2687278.html
Copyright © 2011-2022 走看看