微信网页授权的access_token虽然有时间限制 也是7200 但是看了官方文档并没有限制调用次数 这个还需要缓存吗?
如果缓存的话 只能根据用户的id来缓存access_token 因为每个用户的access_token不一样 但是 这个用户进来的时候 就需要用这个access_token 后面的逻辑怎么写呢? 还有后面的刷新access_token 还需要按照官方提供的refresh_token进行刷新token吗?
微信网页授权的access_token虽然有时间限制 也是7200 但是看了官方文档并没有限制调用次数 这个还需要缓存吗?
如果缓存的话 只能根据用户的id来缓存access_token 因为每个用户的access_token不一样 但是 这个用户进来的时候 就需要用这个access_token 后面的逻辑怎么写呢? 还有后面的刷新access_token 还需要按照官方提供的refresh_token进行刷新token吗?
不用缓存。一个access_token的调用次数是没有限制,只是限制了一天申请access_token的次数。。
另外我记得access_token一旦是用过一次后,然后一定时间内没有再是用过这个access_token,没多久这个access_token就失效了。但是文档里并没说明
我的理解是:
既然官方不限制调用次数,所以理论上不用缓存。
但是官方设置了刷新,所以在业务层面上会用到的情况:
如果用户未关注公众号,用户每次访问页面都需要手动同意授权。这时如果你缓存(7200s)/刷新(30 days)了access_token,这时就可以静默获取/更新用户信息。在需要频繁获取用户信息时省去了用户手动确认的步骤。
2 回答3.1k 阅读
1 回答1.9k 阅读✓ 已解决
2 回答1.2k 阅读
1 回答1.5k 阅读
1 回答1.4k 阅读
796 阅读
1 回答623 阅读
一般不用缓存吧,好处是不用每次打开都闪一下授权页;缓存的话可以写到session里,进来的时候判断下有没有access_token、有的话是否过期,过期的话可以用refresh_token刷新(不过我都是习惯直接跳到授权页再次授权,要不还要判断下refresh_token是否过期,逻辑上太麻烦)。