MVC记住账号密码

使用cookie操作

前端:

 1 <div>
 2             用户名:<input type="text" id="UserName" value="@ViewBag.UserName"/>
 3         </div>
 4         <div>
 5             &nbsp;&nbsp;&nbsp;密码:<input type="text" id="UserPwd" value="@ViewBag.UserPwd" style="margin-top:10px"/>
 6         </div>
 7         <div>
 8             <input type="checkbox" id="single" checked="checked" style="margin-left:50px;margin-top:10px"/>&nbsp;记住密码
 9         </div>
10         <div>
11             <input type="button" value="登录" οnclick="btnRegister()" style="margin-left:100px;margin-top:10px"/>
12         </div>

JS代码:

通过AJAX 传输数据 我们不仅要传输账号和密码 还有传复选框的状态(参数CK)

 1 function btnRegister()
 2     {
 3         $.get("/Login/UsersLogin", { Name: $("#UserName").val(), Password: $("#UserPwd").val(), Ck: $("#single").prop('checked') }, function (data, Status) {
 4             if(Status="success")
 5             {
 6                 if (data > 0)
 7                 {
 8                     alert('登录成功');
 9                     window.location.href = "/OilDrum/Index";
10                 }
11                 else {
12                     alert('用户名或密码错误');
13                 }
14             }
15         })
16     }

在登录的方法中:

CK参数就是复选框的状态true或false

首先判断数据库中是否存在账号密码

之后判断复选框是否选中

选中: 创建一个cookie对象

在cookie对象中保存用户名和密码,并设置cookie的过期时间,保存到客户端中去

未选中:创建一个cookie对象

判断cookie对象中是否空值,存在值的情况下,设置过期时间为-1,因为我们复选框为false没有选中,所以我们要把过期的时间设置为之前的时间,这样Cookie就会空值,保存到客户端中

 注意:

在将密码存入到cookie中,可能不大安全,因为cookie以文本的形式存放在客户端中,这将会使我们的密码暴露出来,

我们可以在密码存储到cookie中的时候,对密码进行加密,如(MD5密码加密等....)

 1 public int UsersLogin(LoginModel loginModel,bool Ck)
 2         {
 3             try
 4             {
 5                 List<LoginModel> enumerable = new List<LoginModel>();
 6                 int nn = 0;
 7                 using (IDbConnection con = new SqlConnection(connecString))
 8                 {
 9                     nn =(int) con.ExecuteScalar("select COUNT(1) from Users where Name=@Name and Password=@Password", new { Name = loginModel.Name, Password = loginModel.Password });
10                 }
11                 if (nn > 0)
12                 {
13                     //判断是否记住密码
14                     if(Ck)
15                     {
16                         HttpCookie hc = new HttpCookie("Example");
17
18                         //在cookie对象中保存用户名和密码
19                         hc["UserName"] = loginModel.Name;
20                         hc["UserPwd"] = loginModel.Password;
21                         //设置过期时间
22                         hc.Expires = DateTime.Now.AddDays(2);
23                         //保存到客户端
24                         Response.Cookies.Add(hc);
25                     }
26                     else
27                     {
28                         HttpCookie hc = new HttpCookie("Example");
29                         //判断hc是否空值
30                         if(hc!=null)
31                         {
32                             //设置过期时间
33                             hc.Expires = DateTime.Now.AddDays(-1);
34                             //保存到客户端
35                             Response.Cookies.Add(hc);
36                         }
37
38                     }
39                     return 1;
40                 }
41                 else
42                 {
43                     return 0;
44                 }
45             }
46             catch (Exception e)
47             {
48
49                 throw;
50             }
51         }

在控制器中的视图方法中:

获取UsersLogin方法中创建的cookie对象Example是否存在数据

有值:赋值给对应的文本框

空值:直接返回视图

public ActionResult Index(){//获取cookie中的数据HttpCookie cookie = Request.Cookies.Get("Example");//判断cookie是否空值if(cookie!=null){//把保存的用户名和密码赋值给对应的文本框//用户名var name = cookie.Values["UserName"].ToString();ViewBag.UserName = name;//密码var pwd = cookie.Values["UserPwd"].ToString(); ViewBag.UserPwd = pwd; } return View(); }

转载于:https://www.cnblogs.com/Hmd528/p/10695156.html

C# ASP.NET MVC:使用Cookie记住账号密码相关推荐

  1. Jsp使用Cookie完成记住账号密码的功能

    网站中对于记住账号密码,方便下次登录的使用非常普遍,那么它是怎么实现的呢? 首先他的流程是,设计一个复选框,当选中复选框时,就会传值到处理页面,复选框的用途就是判断用户是否愿意记住账号密码. 我们通过 ...

  2. ssm实现记住账号密码(cookie)

    cookie实现记住账号密码 1.需要实现的功能? 2.实现思路 3.后端代码 1.需要实现的功能? 在我们登陆的时候,页面有一个记住密码的单选框,如果用户勾选了记住密码,那么下次登陆的时候,就无需输 ...

  3. JavaWeb利用cookie记住账号

    JavaWeb利用cookie记住账号. 首先,来看看界面什么样子. 记住账号最普遍的做法,就是在点击登录时,将账号保存到cookie中. 材料准备 <script src="${ct ...

  4. Vue实现登录记住账号密码功能的思路与过程

    文章来源: 学习通http://www.bdgxy.com/ 目录 实现思路 这里有三种方法来存储账号密码: 功能界面 记住账号密码功能的具体实现 密码加密 localStorage cookies ...

  5. 账号密码代码php,JS代码怎样实现记住账号密码

    这次给大家带来JS代码怎样实现记住账号密码,JS代码实现记住账号密码的注意事项有哪些,下面就是实战案例,一起来看一下. 很多登录功能上都有个"记住密码"的功能,其实无非就是对coo ...

  6. android中注册的账号密码储存在,Android中使用SharedPreferences完成记住账号密码的功能...

    效果图: 记住密码后,再次登录就会出现账号密码,否则没有. 分析: SharedPreferences可将数据存储到本地的配置文件中 SharedPreferences会记录CheckBox的状态,如 ...

  7. 利用SharedPreferences完成记住账号密码的功能

    利用SharedPreferences完成记住账号密码的功能 效果图: 记住密码后,再次登录就会出现账号密码,否则没有. 分析: SharedPreferences可将数据存储到本地的配置文件中 Sh ...

  8. uni-app 实现记住账号密码功能

    1.示例: 2.代码: 只看核心代码块 其他不用管 <template><view class="page"><view class="to ...

  9. QT 记住账号密码登录

    弄了个简单的记住账号密码登录功能,适合初学者学习,直接上代码,代码有注释. 喂饭到嘴边了,看你会不会吃啦 开发环境是VS2015 1.由于没有写注册功能,所以账号和密码我提前写在一个ini文件,这个文 ...

最新文章

  1. hashlib模式和hmac模式
  2. AI战“疫“之路:​揭秘高精准无感测温系统的全栈AI 技术
  3. javalibrary 线上_线上的少儿口才培训班-1V1精品课程【演讲与口才吧】
  4. 软文推荐:常用 Java 静态代码分析工具的分析与比较
  5. SAP Cloud for Customer(C4C)前台显示的数据是如何从后台读取的
  6. YBTOJ:字符串匹配(KMP)
  7. 谷歌本地不支持websocket_django开发-websocket的实现
  8. 真正能成功的人,不见得是最聪明的,也小见得是学历最高的,而是最能面对问题、锲而不舍的人。...
  9. 推荐一篇讲解各种debug技术的文章,相当不错!
  10. Bailian4151 电影节【贪心】
  11. 开课吧:一文读懂算法工程师大致分类与技术要求
  12. 程序之间耦合以及解耦问题探究
  13. 如何使用花生壳或ngork工具将web应用部署到公网上访问
  14. 国外android手机刷机国内,哪些中国安卓用户最爱刷机?
  15. Git客户端Tower for Mac 8.2
  16. NOI题库1.1-1.10答案
  17. 怎么使用oracle的加权平均数_加权平均数与算术平均数的区别,实例比较。
  18. 论文翻译:Pose-conditioned Spatio-Temporal Attention for Human Action Recognition
  19. 零中频接收机频率转换图_相干光接收机的相关问题
  20. 正方体最快最简单画_正方体的画法步骤_正方体怎么画

热门文章

  1. android布局错,Android Studio布局错误
  2. java连接redis不稳定_java相关:jedispool连redis高并发卡死的问题
  3. dataimagepng php_PHP decode data:image/png;base64
  4. PLSQL如何将千万数据快速插入到另一张表中_数据库设计中的 9 大常见错误
  5. 网站html静态化 教程,新云CMS网站内容管理系统生成HTML静态化教程
  6. mysql 主从 不一致_揭秘MySQL主从数据不一致
  7. mysql56数据库的创建_如何在Mysql下用命令创建数据库用户方法
  8. 在C ++中将字符串转换为int
  9. struts2数据库操作_Struts 2操作错误和操作消息
  10. ssh无密码登录_3个简单步骤即可完成无密码SSH登录