0

http://mp.weixin.qq.com/wiki/...

微信文档中说的刷新access_token有什么用?要获取到用户的openid不是每次都要先获得code(唯一的吧?),再用code去获取access_token,再获取到openid,那把access_token刷新是什么意思?请微信开发的大神指导下、

wz0107 759
2016-11-16 提问

查看全部 6 个回答

1

网页授权 access_token 与普通 access_token 的区别在于网页授权 access_token 是针对用户的, 即: 每个用户的网页授权 access_token 是不一样的.

网页授权 access_token 是可以用来多次刷新同一个用户的个人信息的.

网页授权 access_token 被多次使用的场景:

  • 用户第一次授权登录后, 在服务器保存用户信息和用户的网页授权 access_token, 外加用户的网页授权 refresh_token, 同时在微信浏览器 local storage 中保存用户的网站 ID;
用户的 openId 属于敏感信息, 不应该保存在浏览器中!
  • 用户再次进入相同页面时, 从微信浏览器 local storage 中读取用户 ID;
  • 服务器根据用户 ID 找到用户的 openId, 以及 access_token, 注意这时候不需要用户重新授权, 可以直接用 access_token (必要时调用问题中提到的 "第三个接口") 刷新用户的个人信息;

以上就是 access_token 和 refresh_token 的使用场景, 主要实现的是免授权登录, 根据 refresh_token 的有效期设置, 可以保持最长 30 天的免授权期, 30 天过后, 用户重新进入网站, 则必须重新点击 "同意" 按钮进行授权.

推广链接