首页  >  文章  >  后端开发  >  关于微信的access_token和ticket的疑问

关于微信的access_token和ticket的疑问

WBOY
WBOY原创
2016-12-01 00:25:493166浏览

关于此,
1、目前我的做法是先将access_token和对应获取的时间存储到数据库,检验当下请求时间和数据库的时间差是否已超过一定时间(6000s),如是,则重新请求access_token,并重新存储token和时间,否则直接用数据库里已有的token去请求ticket;
2、疑问:1)多次请求ticket是否可行?是不是只要不多次请求token就可以?
2)相同的token去请求ticket会不同吗?token和ticket之间到底有什么联系?
谢谢!

回复内容:

关于此,
1、目前我的做法是先将access_token和对应获取的时间存储到数据库,检验当下请求时间和数据库的时间差是否已超过一定时间(6000s),如是,则重新请求access_token,并重新存储token和时间,否则直接用数据库里已有的token去请求ticket;
2、疑问:1)多次请求ticket是否可行?是不是只要不多次请求token就可以?
2)相同的token去请求ticket会不同吗?token和ticket之间到底有什么联系?
谢谢!

通过“微信公众平台接口调试工具”亲身经历,得出以下结论:
1、微信公众平台开发文档中写道:

关于微信的access_token和ticket的疑问

可见微信公众平台对jsapi_ticket的调用次数及频率作了限制,不建议频繁刷新jsapi_ticket,但不刷新也不行,其次ticket有用于调用微信卡券的api_ticket、jssdk配置时使用的jsapi_ticket,用于兑换二维码的ticket,规则都一致。
2、同一个access_token多次获取ticket结果一致。但微信建议是全局缓存access_token和ticket并设置对应的过期时间。至于两者的区别,我个人认为:
ticket是针对某一api的调用凭证,在一定程度上泄露也无所谓,只含有特定的权限。而access_token是公众号的全局唯一接口调用凭据,公众号调用各接口时都需使用access_token,需要妥善保管。ticket是token产生的临时凭据。如果重新获取,上一个凭据将失效。

如果总结有误,欢迎指出。

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn