session和token

sessiontoken ,在我看来,没啥不同,都是一种客户端和服务端保持链接得一种解决方案,只不过 session 由服务器帮我解决好了,而 token 则需要自己来处理

当然还是有区别的,比如 session 就要解决跨域等问题

session 更多的是,单机时代的一种解决方案,而 token 更适应现在的使用场景

session和cookie

一般来说 浏览器中的 cookie 中会存有 session_id,如果禁止 cookie 使用,可以在 url 链接中带有 session_id

session分布式解决方案

一般来说 session 都是保存在一台服务器的文件目录上,为了达到分布式效果,有几种方案。

  • session 目录共享,oss 或者挂载
  • 现在的大部分php框架,都支持不同的 session驱动,可以把 file 驱动,替换成 redis, 这样子就可以支持分布式了
  • session 保存到 mysql

当然还有其他的方案,其中的效果和优缺点,只有实际使用才能真正知道了。

token的使用

restful,前后端分离项目中,token 还是比较好用的,毕竟大部分的 session,还是依赖 cookie,而在app端没有 cookie 这个东西(存疑,毕竟我不了解app), token 可以自定义的 uuid,也可以 jwt