小程序登录技术询问,使用 Django 做后台

2019-03-05 17:36:05 +08:00
 AFuture

毕设使用 Django 做后台,小程序要经过后台的验证才能通过。

目前已经利用 django 的 rest framework jwt 做到了:

  1. 小程序 POST 基本信息到后台
  2. 后台检测登录信息是否合法
  3. 合法的情况下 通过 code2session 获取 open id 和 session key
  4. 申请一个利用 User 信息申请一个 token。
  5. 返回这个 token

现在面临技术难题:如何保存这个腾讯服务器给的 session key ? 我的思路是利用 Django 的 Session 缓存存下当前用户的需要存的信息,但是不知道具体如何操作,希望大佬们给点意见,谢谢!

2742 次点击
所在节点    问与答
8 条回复
hoosin
2019-03-05 17:46:15 +08:00
JWT 了解一下
AFuture
2019-03-05 17:55:43 +08:00
@hoosin 我 django 里使用了 rest framework jwt,目前的问题是如何存每个用户的必要的信息 如 session key.
zqx
2019-03-05 21:21:00 +08:00
jwt.io 这个库,把用户信息生成编码放到客户端存储中
contradictspiral
2019-03-05 22:29:55 +08:00
我记得小程序的 session key 似乎是不能反给客户端的,我的话会通过 Abstractuser 自己实现 user model 来加个字段来存 session key
qiayue
2019-03-05 22:30:46 +08:00
存数据库不行吗
so1n
2019-03-05 22:41:46 +08:00
存数据库或者 redis
AFuture
2019-03-05 22:43:21 +08:00
@zqx 多谢大佬 我看看

@contradictspiral 我也有过这个考虑 但是 session key 不是会失效么 感觉加在用户表里不大好

@qiayue 存数据库的话得再写额外代码维护 session key 的有效性 有点麻烦 所以想用 django 的 session 搞定
contradictspiral
2019-03-05 23:54:21 +08:00
每次用户登录都可以获取到全新的 session key, 小程序这种快应用场景下感觉有效期应该足够用户操作完到退出了

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

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

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

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

© 2021 V2EX