• MVC与单元测试实践之健身网站(五)-系统信息、前台入口


    Fit项目停滞了一段时间,现在继续吧。上一篇完成了动作文本和配图的添加、编辑等内容。接下来要完成的是后台的最后一个模块:系统信息;以及前台的入口:关于注册、登录、修改密码等。

     

    一 系统信息

    a) 用户信息

    用户信息界面可以查看前台用户的注册、使用情况。

     

    b) 操作记录

    对后台管理员进行的操作做了记录,然后可以在该界面查看。

    记录的是对各个菜单的增删改查操作,在权限管理AuthorizaFilter中判断权限的同时记录操作内容。所以记录的内容便直接使用权限的名称了。

     

    二 前台登录

    a) 注册

     

    注册需要提供的信息有用户名和邮箱,后续使用邮箱作为登录账号,并会通过邮件来进行验证操作(没有短信验证)。这个表单被提交时,会首先判断邮件是否已经被注册,注册成功后,还需要激活,点击注册邮箱收到的激活链接,会根据ID和激活码来尝试激活。

    localhost,哄着自己玩哈哈。但激活域名保存在数据库,以后可以方便地修改。

    这块还遇到个关于AutoFac的奇怪问题,IUserService本来用得好好地,但添加了几个方法后突然无法解析了,找了半天原因未果后,为UserController单独配置了一个解析规则,然后就好了,之后把单独的规则去掉,IUserService又能正常解析了,不知道这是什么原因。

          

    b) 忘记密码

    忘记密码时首先输入邮箱,验证邮箱是否注册过,如果时则发送一份包含验证码的确认邮件。

    邮件验证通过后,可以重置密码。这里还是要注意保证每个步骤之间的衔接,尤其要防止用户跳过验证直接访问重置密码界面。

    这儿还体会到一个关于return View()与return Redirect()的区别,return View()返回的仍然是当前Action的视图,没有重定向,浏览器地址栏显示的仍然是当前的Action

    另外还有关于TempData的使用,TempData只能在第一次请求中读取,然后在一次请求中可以多次使用。

     

    c) 登录

    登录的实现与后台的登录一致,根据Email和密码检查,校验方法的返回值类型为long?,如果登录成功,则返回对应的ID,否则返回空。

     

    这样登录、注册、修改密码的闭环就形成了。

     

     

     

     

  • 相关阅读:
    阿里P8聊并发编程:线程中断和终止
    浅谈Java中的锁:Synchronized、重入锁、读写锁
    史上最全Java面试题!进程,线程相关部分下篇(带全部答案)
    @史上最全Java面试题!关于volatile关键字篇(带全部答案)
    @史上最全Java面试题!进程,线程相关部分上篇(带全部答案)
    一道号称“史上最难”java面试题引发的线程安全思考,掌握了吗?
    stopWatch
    mysql语句及执行计划
    Awr
    文件下载
  • 原文地址:https://www.cnblogs.com/zhixin9001/p/7096538.html
Copyright © 2020-2023  润新知