Django 如何更好的实现自动登录?

2017 年 12 月 16 日
 piaochen
已经实现了登录,打算加入第一次登录后,下次打开网页,如果用户之前登录过,就 30 天内自动登录的功能。度娘了下,居然发现没找到比较成熟的方案。
目前的思路有两个:
1.往浏览器 cookie 中写入用户名和加密后的密码,然后后台验证。感觉这样还是有点不靠谱。
2.我自己算出一个免登录的 token,然后交给 cookie。自己建一个表,保存 token 和 user 的对应关系,还有失效时间。最后根据浏览器带过来的 token 进行登录。
对于方案 2.django 有没有已经集成相关的步骤?或者有没有什么更优雅的方式?有相关文章的,麻烦也扔过来。谢了。
5325 次点击
所在节点    Python
10 条回复
yearliny
2017 年 12 月 16 日
SingeeKing
2017 年 12 月 16 日
为什么不直接延长 Session/Cookies 的有效期到 30 天?
rogwan
2017 年 12 月 16 日
用户登录保留长点时间没有关系,只要做好账户安全保障就可以,明明都让系统记住密码了,还要老让输入用户名密码也很烦
yichinzhu
2017 年 12 月 16 日
你大概不知道有个东西叫 session ?
leoli
2017 年 12 月 16 日
Weny
2017 年 12 月 16 日
楼主多看书
KgM4gLtF0shViDH3
2017 年 12 月 16 日
存 redis 不就行了。。。这和 django 有什么关系
piaochen
2017 年 12 月 16 日
@SingeeKing 我是做客户端的,自己兴趣写点 django 的东西。是不是一般网站,点选“记住密码”的,就把 session/cookies 的时间延长?加入不点选,就默认的时间?
clino
2017 年 12 月 16 日
典型 session 不 remember me 就一小时,remember 了就比较长,我刚做一个应用改成 3 个月了
zjqzxc
2017 年 12 月 16 日
建议试试 github 的思路,平时自动登陆,敏感操作需要额外输入密码

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/415230

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX