前面学习了激活,是指浏览邮箱中指定返回用户id的页面,若果此 id能够被查询就会成功跳转到登录页面,话不多说,今天将学习登录页面,这里除了前面的url/注意点/bug/知识点之外,还会新增优化模块,用于不从那些不是必须但是能够优化网页的内容

3.jpg

效果图.gif
0.优化
不同于注册界面的错误提示,登录界面的错误提示只有一个
1.compare
beego模板语法,不同于eq,compare用于比较传过来的值是否为nil,eq用于比较传过来的值是否等于空字符串
2.注意
1.这里校验密码前,要先验证用户名的激活状态,如果不验证的化,用户可能没有到邮箱点击激活链接,而直接到登录界面登录
2.cookie存储前要加密
3.登陆成功,要想服务器上传登录成功会话
方便成功跳转到首页
3.知识点
可逆加密:base64是最常用的可逆加密算法,对于保存到本地cookie的数据,加密的画,等于加了一层保障,不然谁在浏览器都可以通过本地的cookie看到你在任意网址的用户名
一.修改界面
1.免费注册链接:/register
2.账户,密码,记住用户名传值:name=username/password/remember
二.编写登录提交逻辑代码
1.获取数据
2.回传数据
3.显示数据
4.安全校验
5.显示错误提示
6.查询用户是否存在
7.跳转到首页

image.png

image.png

image.png

image.png
三.编写登录访问逻辑代码
1.确定控制页面
2.获取cookie并转换
3.回传数据

image.png
四.成功跳转首页的会话逻辑
为了限制首页的访问权限,我们在路由阶段,会设置过滤器,从通过键从服务器获取登录阶段向服务器放松的会话,如过返回的数据为空,代表登录没有成功,就会重定向跳转到登陆界面,不能成功跳转到首页

image.png

image.png
五.首页显示登录状态

image.png
由于路由还没设置好,设置了会话,但是没有设置终止会话,也就是所以报错,猪猪印章来啦