Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

微信公众号没有重试刷新access_token #641

Open
lemon-1997 opened this issue Jan 13, 2023 · 9 comments
Open

微信公众号没有重试刷新access_token #641

lemon-1997 opened this issue Jan 13, 2023 · 9 comments

Comments

@lemon-1997
Copy link

问题及现象

如果GetAccessToken()获取的token有问题,没有重试的机制去刷新,是否能增加当调用失败时,则重新获取token然后重试
access_token相关错误码

40001 获取 access_token 时 AppSecret 错误,或者 access_token 无效。请开发者认真比对 AppSecret 的正确性,或查看是否正在为恰当的公众号调用接口
40014 不合法的 access_token ,请开发者认真比对 access_token 的有效性(如是否过期),或查看是否正在为恰当的公众号调用接口
42001 access_token 超时,请检查 access_token 的有效期,请参考基础支持 - 获取 access_token 中,对 access_token 的详细机制说明
@houseme
Copy link
Collaborator

houseme commented Jan 13, 2023

如果是前置参数都错误了,重试也是无意义的操作,组建中的有效期应该是7000秒

@lemon-1997
Copy link
Author

如果是前置参数都错误了,重试也是无意义的操作,组建中的有效期应该是7000秒

理论上一般都没问题,现在是完全信任cache里的token,如果cache存的token有问题,就必须等cache里的token失效才会去重新拿token,有刷新机制能避免这个问题

@houseme
Copy link
Collaborator

houseme commented Jan 14, 2023

可以新增一个强制刷新的方法出来

@silenceper
Copy link
Owner

有需求可以自行实现AccessTokenHandle接口,至于什么时候刷新token就可以完全自己控制了

@dzwvip
Copy link

dzwvip commented Apr 18, 2023

我也遇到这个问题,不一定是前置参数错误了,而是在测试环境获取token以后 导致 线上环境缓存的token不是最新的,现在只能等失效或者重新服务,刚才看到已经增加了获取稳定版token的功能,不知道怎么初始化模块才能指定使用稳定版token

@xumingpeng
Copy link

我也遇到过这个问题,不一定是之前设置的参数错误了,而是在测试环境获取token以后 导致在线环境存储的token不是最新的,现在只能等丢失效率或者重新服务,刚才看到已经增加了获取稳定版token的功能,不知道怎么开始化模块才能指定使用稳定版token

你好请问您解决这个问题了吗

@houseme
Copy link
Collaborator

houseme commented Jun 6, 2023

我也遇到这个问题,不一定是前置参数错误了,而是在测试环境获取token以后 导致 线上环境缓存的token不是最新的,现在只能等失效或者重新服务,刚才看到已经增加了获取稳定版token的功能,不知道怎么初始化模块才能指定使用稳定版token

同一个appid 多处使用,获取新的token之后,上一个token就失效了,如果频繁的请求,会出现超过该接口的请求频次。

@dzwvip
Copy link

dzwvip commented Jun 7, 2023

在初始化小程序的时候,自定义 token 获取方式,指定使用 获取稳定版token的方式 应该就可以了

@ccfish86
Copy link
Contributor

在初始化小程序的时候,自定义 token 获取方式,指定使用 获取稳定版token的方式 应该就可以了

这样确实是可以的,不过还是希望在能在Wechat.GetMiniProgram(miniProgramConfig)里追加更多参数,直接根据参数决定使用GetAccessToken还是GetStableAccessToken去获取access_token
image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants