登录验证技术分享

开发工具与关键技术:VS,MVC
作者:陈梅
撰写时间:2019年5月30 日
所有代码来源与老师教学
在MVC开发项目中,必不可少的就是有个登录页面的制作,制作一个登录页面,也是要运用几个技术点才能制作完成。登录,肯定就有账号和密码。所以现在我分享的就是账号、密码的验证登录。先看一下控制器部分的代码。
在这里插入图片描述
制作登录验证,首先第一步就是实例化数据库,然后再引用需要用到的封装类,这个封装的类就是加密解密的类,登录账号的密码就需要用到加密解密的问题,然后就可以编写控制器里面的代码。首先登录制作登录页面里的信息,先声明三个字符串变量,一个是账号,一个是密码,还有用户的类型。然后就读取浏览器请求传递cookie,cookie是什么,这个问题我会在下一篇文章里面详细说cookie,现在先不说着。接着就给一个判断,判断cookie是否存在,然后再判断用户账号的cookie是否为空,再判断密码,最后判断用户类型。都判断完成后就使用ViewBag将所有已经判断的数据进行返回。这一操作是对用户账号和密码进行一个保护,保护用户登录账号和密码时,不被其他人盗取信息或查看信息。这是登录里必须的技术。除了使用ViewBag将数据返回,也还可以用ViewDate将数据返回,只是这两种的写法就只用一处不同,View是要用[“”],这个符号来引用字段,返回数据。
在这里插入图片描述
在这里插入图片描述
然后就写验证登录的控制器的代码。String strMsg = “fail”;这句代码是定义一个记录状态的变量。然后再获取页面传递过来的变量。接着判断,第一步是验证验证码是否正确。string sessionValiCode = “”;这句代码的意思是获取session存放的验证码,然后在用try{}catch(Exception e){}来捕获异常,sessionValiCode= Session[“validCode”]
.ToString();为图片字符串。而Console.Write(e);是不会产生输出,主要是为了避免VS提示e未使用的警告。然后接着判断填入的验证码和session中的验证码是否一致,并且忽略验证码图片中的大小写。然后再次用try{}catch(Exception e){}捕捉异常,第二步用单表查询的格式,查询出用户表里的用户账号是否存在,并判断。第三步是对于页面传来的密码进行一个加密的操作,string password = AESEncryptHelper.Encrypt(strPassword);这句代码的意思是将密码进入AES265后进行加密的操作。第四步,就是判断账号和选择的权限跟注册的账号权限是够对应。StrUserTypeClass = strUserTypeClass.Trim();这句代码是把空格去掉的意思。然后再对用户表,用户角色明细表和用户类型表进行一个多表的查询。最后一步就是设置session机制。用户身份验证完成了,就要开始处理登录信息,获取用户类型名称(string userTypeName = listUserType[0].UserType.Trim();),接着获取用户类型ID。然后设置session,设置session就是传递用户ID和用户类型ID,然后再设置登录时间的格式。最后就是用户的类型。然后再设置cookie,这是一个关键的一步,因为关系到用户登录的安全性问题。如果是在家里登录账号,就可以记住密码,这个密码保存在cookie里面,并且设置它只能保存七天,账号,用户类型也是如此。然后再设置删除cookie。Cookie.Expires = DateTime.Now.AddDay(-1);是通过设置cookie的过期时间为负,强制使cookie过期。账号信息,密码,验证码填写正确,用户类型也对应,最后就可以登录成功了。(strMsg = “success”;)为登录成功的代码。如果登录不成功,就会出现,”账号和登录人的角色不匹配!”、”当前输入的密码错误!”、”当前输入的账号不存在!”、”验证码不匹配!”、”请把页面数据填写完整!”。这些提示框出来。最后一步就是返回数据啦。然后就看一下视图代码部分吧!

在这里插入图片描述
获取登录按钮的id,给登录按钮一个点击事件,然后再用formDate来获取用户账号ID,serializeArray()方法是通过序列化表单值来创建对象数组(名称和值)。然后返回JSON数据结构数据。serializeArray()方法就是返回JSON对象而非JSON字符串。人后就点击登录,登录成功后就会跳转到主页面。还要用replace,是跳转页面后,不会有后退的按钮现象。如果登录不成功,就会弹出提示框,是哪里的数据输入不正确的提示。最后还可以给登录一个回车登录的功能。首先判断是否是回车键,其次就用JS触发登录按钮(btnSubmit)的单击事件。输入信息,点击回车键,也能登录到主页面去。
在这里插入图片描述
输入账号,输入密码,再输入验证码,选择登录的用户类型,再经过数据的传输判断,判断所输入的信息是否与数据库的一致,输入的验证码是否与图片上的验证码一致,全部一致,就能点击登录按钮,就能跳转到页面去了。这样一个登录的信息验证技术分享就到这里了。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值