【refresh_token】根据 code 获取,要想在不重新授权的情况下,再次获取access_token(解决过期问题),refresh_token是一种刷新机制。1)refresh_token拥有更长的有效性(7天、30天、60天和90天)。
2)当refresh_token也失效后,就需要用户重新授权了。
请求地址如下: 。
其中 参数说明见表
注:其返回值 JSON 数据格式(成功与错误)与通过code获取access_token等数据一致。
【首先】在WxAuth.class.php类中增加方法refreshToken(), 核心代码如下:
其中,参数refresh_token为通过code获取的初始值。
【其次】在Application/Wechat/Controller/IndexController.class.php文件中新增getNewAccessToken()方法,用来刷新access_token。其 核心代码如下:
其中,$refreshToken为上一步骤中获取的refresh_token值。因为这一步骤不需要强制使用微信客户端进行访问,所以可以在本地直接访问以下地址进行测试:。返回结果如图所示: