请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

memorycache

老师,access_token缓存在memorycache里,他是怎么判断是哪个用户调用的接口啊?是每个用户操作后都会缓存一个access_token吗

正在回答 回答被采纳积分+3

3回答

河畔一角 2019-11-19 19:30:22

这个地方我强调一下,您问的非常好的一个问题,但是我把问题理解错了。我统一回复和强调,网页授权的token是针对用户自己全局,并非所有用户共用。用户需要根据AppID和secret来生成一个全局token,只要没过期就可以获取这个用户的其它信息。 还有一个token是普通token,他是针对所有人的全局,他可以获取任意一个用户的信息。

0 回复 有任何疑惑可以回复我~
  • isjia #1
    memory cache 存储为{openid, access_token}的形式,是不是就解决了呢。不然这个程序一次只能1个用户访问。
    回复 有任何疑惑可以回复我~ 2019-11-19 22:24:06
河畔一角 2019-10-16 15:11:51

memorycache是一个缓存数据库,也有很多后台同学使用redis数据库进行缓存,作用一样,access_token全局缓存即可,不需要每个同学分配一个。

0 回复 有任何疑惑可以回复我~
河畔一角 2019-10-16 14:20:46

token是全局的,不分用户。

0 回复 有任何疑惑可以回复我~
  • 提问者 慕粉1470117225 #1
    老师 我还是有点不理解啊 ,比如我第一个用户调接口的时候cache.put("uid",1)了,然后第二个用户cache.put("uid",2),他这个就覆盖了第一个用户的uid啊,不需要new一个cache实例吗
    回复 有任何疑惑可以回复我~ 2019-11-18 09:13:09
  • 他是全局缓存服务器,重复的变量会被覆盖。我们只是用了node里面的一个memcache插件,实际上有对应的缓存服务器。
    回复 有任何疑惑可以回复我~ 2019-11-18 09:27:16
  • isjia 回复 河畔一角 #3
    重复的变量会被覆盖,用户可能取到其他人的openid是吗?
    回复 有任何疑惑可以回复我~ 2019-11-19 17:34:30
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信