https://developers.weixin.qq.com/doc/offiaccount/Basic_Information/Get_access_token.html
关于消息订阅中access_token,上面官方文档解释“目前access_token的有效期通过返回的expires_in来传达,目前是7200秒之内的值。中控服务器需要根据这个有效时间提前去刷新新access_token”。
意思就是需要我们在自己的业务服务器中,在access token 2小时过期前,定时去刷新获取新的access_token?这样做的意义是什么?增加了开发的难度,为了发个消息通知用户订单状态,还需要针对每个订单写个定时器去跟踪判断access_token过期了没有。感觉好麻烦。比如很多情况是,用户今天下单,下单时勾选消息订阅,订单状态更新可能是1-2天后,这时当时勾选消息订阅时获取的access_token早已过期了,无法发送订阅消息给用户。针对这个问题没有更好的解决方法吗?是不是每个用户下的单,都要有一个定时器来定时刷新获取新的access_token? 为什么会有这样奇葩的要求
对于使用频率较低的access_token,我们的处理办法是直接在接口里使用,如果返回的错误码里显示access_token已过期的话,则重新获取access_token,保存,再继续接口调用。
仅供参考。
access_token 的有效期2个小时,过期前去重新调用接口,你如果是有多个站点公用了这个公众号 access_token,你可以自己去封装一个开放接口,此接口处理是否过期及返回值,所有站点调用此接口。