登录逻辑实现

Django设计登录需要使用到的

HttpResponse--------》返回response对象到浏览器
render------》建立视图与模板之间的联系,实现视图与模板之间的传参
redirect------》重定向网页

1,实现登录基本逻辑

简单登录页面,加入验证码刷新,填入功能,登陆后下次账户自动填充
views业务处理视图中包含视图
读取session中账户信息,若有传参给登录页面,若没有,则为空参数,用render显示登录页面
组合形成验证码图片,并将组成验证码的信息保存在session中,通过HttpResponse显示一个验证码图片
书写登录前端代码,显示前端登录页面,账户,密码通过{{}}直接从视图中读取,验证码图片通过src指定图片路径,在上面生成的验证码图片路径中提取,(该路径为绝对路径)
验证码刷新逻辑实现:在前端代码中,通过script事件操作实现,通过点击图片直接修改src实现,但该src不能喝之前路径一模一样,可以在其后端添加?new Data()参数进行修改。
登录业务逻辑处理视图:判断用户账号,密码是否争取,正确显示首页信息,不正确则返回登录页面。

2,添加中间件后

首先在session中添加登录状态信息
首先将登录页面和验证码页面释放中间件,使之可以不用经过验证即可访问
将需要登录状态显示为登陆后才可以访问的页面加入中间件检测
在用户访问登录页面时,请求首先到达中间件判断,经检测发现该路径不需要检测,直接到达指定视图(如何获取当前路径,可以使用request.path直接获取当前路径)
在用户访问需要登录后才能访问的页面后,会将请求首先到达中间件判断路径,经判断需要检测,此时读取session中登录状态,若无登录状态信息或登录状态信息为未登录状态,用重定向返回登录页面

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值