本文共 573 字,大约阅读时间需要 1 分钟。
这里有几个知识点,在此记录下。
首先是哪些数据进行加密,如下表:
对应的代码如下:
这里把id,login_name及login_pwd和login_salt及status中间连接"-"进行md5。
在传给前端的时候:
使用%s#%s,其中前面的那个是刚刚生成的dm5然后接一个#再接一个数据库里面的id编号。它的失效时间为60*60*24*120s
在用户退出的时候,删除前端的cookie值及重定向即可:
下面是拦截器方面的:
每次有页面刷新的时,就会有调用这个拦截器。这个g是Flask中的全局变量。
这里主要是记录这个全局变量的目的是为了把用户名传给前端,而设置的。,
如果check_login()没有登录,g.current_user = None,到时候前端那边再进行判断,就可以显示用户名或者不显示用户名。
判断用户登录相关代码如下:
这里判断了,他的cookie里面有没有
并且字符串是不是s#s这种格式的。
并且,根据后面那个s的值(其实是id),重新生成一份md5,再和前面那个s对比。
如果一样,则说明是这个用户,就把他返回。
前端是这样玩的:
构造一个字典,把字典数据传输到ops_render函数中。
其中函数具体如下:
可见,他把全局变量中的数据,给了模板。
显示的时候,用{%if%}和{%else%}进行判断即可
转载地址:http://tdmif.baihongyu.com/