登录信息保存到数据库中合适吗?

malie0
  • 335

一个app应用,用户登录时的token和session的信息都保存到了数据库里,不知道这种方式会不会很消耗数据库资源,特别是用户量大的时候?有没有其他更好的替代方案?不能像pc端那样用cookie来保持session有效期吗?我不太清楚移动端app是怎么开发的,能不能实现类似pc端的功能?如果要实现session共享是不是除了nosql就只能存数据库了?

回复
阅读 5.7k
3 个回答

api 使用session替代token 的利弊在哪?

这是我在咱们社区之前的提问。你说那种方式都可以,现在一般做这种识别登录的,都会存到redis里。app开发的!希望之前的提问你有帮助!

  1. 说几点,你的应用不对别的网站授权,可以使用 cookie session 还有token的方式

  2. 要是app做的是平台类的应用,需要用oauth2的验证登录的方式!这样是相对比较安全的!

可以存在cache中。你一个用户其实就吃个几K的内存。而且过期内存也会被回收。

移动端开发一般不采用 cookie + SESSION 模式,app开发权限一般采用 token 验证机制

简单介绍下

服务器接收到app发送的用户名和密码后,验证用户名和密码是否正确。

如果错误则返回错误信息。

如果验证正确,生成一个随机的不重复的 token 字符串(例如 MD5(邮箱+密码+时间戳。。。。)),服务端保存(放到数据库或缓存中都可以)起来并设置有效期,同时返回给客户端,

客户端保存 token ,当请求需要权限的数据,带上token,服务端验证token 没过期且合法,返回数据,如果过期再次通过用户名和密码请求 token

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏