zoukankan      html  css  js  c++  java
  • forms表单验证

            在ASP.NET应用程序中,有四种验证方式:Windows验证、表单验证、Passpord验证、自定义验证。

            最近在看表单验证,在这里给大家分享下我的经验。

            要实现Form验证很简单。

            第一步在web.config文件中的<system.web>节点下添加

          <authentication mode="Forms">
            <forms name="formname" path="/" loginUrl=""  timeout=“”/>
          </authentication>

           这样就告诉了应用程序用表单验证。

            验证名:formname(Request.IsAuthenticated的值就是根据cookies中是否存在名为formname的cookie来判断是否返回true或者false

           存放路径:根目录(浏览器不同cookie文件存放的具体路径也不同)。

            登录路由:通过调用FormsAuthentication.RedirectToLoginPage()可以获得loginUrl的值。

            过期时间:默认是20分钟。

            当然这里其他一些参数就不详细说明了,可以参考msdn。

            第二步创建并保存cookie。在你的登录界面中添加HttpCookie cookie = new HttpCookie(FormsAuthentication.FormsCookieName, cookieValue)cookieValue可以自己定义也可以调用FormsAuthenticationTicket类封装自己想要的一些数据,一般都经过加密。例如它的重载构造函数之一FormsAuthenticationTicket(int version, string name, DateTime issueDate, DateTime expiration, bool isPersistent, string userData, string cookiePath)name定义了HttpContext.User.Identity.Name;UserData可以定义我们自己的一些数据。然后保存把创建的cookie值保存起来来通过调用代码Response.Cookies.Add(cookie)。这样你的cookie值就能在客户端保存起来。

            第三步创建要验证的页面,在页面中可以通过调用Request.IsAuthenticated的值来判断当前Requset是否已经验证。基本思路就是判断是否有名为表单名formname的cookie值。Request.IsAuthenticated其实是调用了HttpContext.User.Identity.IsAuthenticated的值。。如果Request.IsAuthenticated为false,就可以调用FormsAuthentication.RedirectToLoginPage();Response.End();来实现页面跳转。当我们访问一个需要验证的页面,就会跳转到登录界面,登录成功后,页面自动跳转到刚才访问的页面。

            以上只是简单的讲了下使用方法。在项目中具体应用,因人而异。

            本人.net菜鸟,好久没写博客,望大家多多包涵。

            以后每周坚持写一篇。

           

  • 相关阅读:
    Recommended Books for Algo Trading in 2020
    Market Making is simpler than you think!
    Top Crypto Market Makers of 2020
    Top Crypto Market Makers, Rated and Reviewed
    爬取伯乐在线文章(五)itemloader
    爬取伯乐在线文章(四)将爬取结果保存到MySQL
    爬取伯乐在线文章(三)爬取所有页面的文章
    爬取伯乐在线文章(二)通过xpath提取源文件中需要的内容
    爬取伯乐在线文章(一)
    爬虫去重策略
  • 原文地址:https://www.cnblogs.com/7579/p/3087805.html
Copyright © 2011-2022 走看看