微信网页授权的access_token需要缓存吗?

微信网页授权的access_token虽然有时间限制 也是7200 但是看了官方文档并没有限制调用次数 这个还需要缓存吗?

如果缓存的话 只能根据用户的id来缓存access_token 因为每个用户的access_token不一样 但是 这个用户进来的时候 就需要用这个access_token 后面的逻辑怎么写呢? 还有后面的刷新access_token 还需要按照官方提供的refresh_token进行刷新token吗?

阅读 9.4k
4 个回答

一般不用缓存吧,好处是不用每次打开都闪一下授权页;缓存的话可以写到session里,进来的时候判断下有没有access_token、有的话是否过期,过期的话可以用refresh_token刷新(不过我都是习惯直接跳到授权页再次授权,要不还要判断下refresh_token是否过期,逻辑上太麻烦)。

统一楼上的说法,用再次授权解决这个问题。

不用缓存。一个access_token的调用次数是没有限制,只是限制了一天申请access_token的次数。。
另外我记得access_token一旦是用过一次后,然后一定时间内没有再是用过这个access_token,没多久这个access_token就失效了。但是文档里并没说明

我的理解是:
既然官方不限制调用次数,所以理论上不用缓存。
但是官方设置了刷新,所以在业务层面上会用到的情况:

如果用户未关注公众号,用户每次访问页面都需要手动同意授权。这时如果你缓存(7200s)/刷新(30 days)了access_token,这时就可以静默获取/更新用户信息。在需要频繁获取用户信息时省去了用户手动确认的步骤。
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题