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

强制项目不要自动获取AccessToken #688

Closed
leocxy opened this issue May 9, 2017 · 8 comments
Closed

强制项目不要自动获取AccessToken #688

leocxy opened this issue May 9, 2017 · 8 comments

Comments

@leocxy
Copy link

leocxy commented May 9, 2017

我用的环境

PHP 版本:5.6
overtrue/wechat 版本:~3.1

问题及现象

因为AccessToken已经有一个脚本定时维护刷新,所以接入的overtrue/wechat的项目,不希望项目自动retry,除了,直接改你Core里面的抽象类,还有什么办法能比较好的解决这个问题?

@overtrue
Copy link
Collaborator

overtrue commented May 9, 2017

不是有自定义 access token 的方法么?https://easywechat.org/zh-cn/docs/access_token.html#修改-app-的-Access-Token

@leocxy
Copy link
Author

leocxy commented May 9, 2017

设置AccessToken后,如果设置的AccessToken失效,就会Retry, 然后就悲剧了。其实最简单是修改你EasyWeChat\Core\AbstractAPI.php的retryMiddleware,但是,Vendor的文件本来就tracking。所以就很蛋疼了。

@overtrue
Copy link
Collaborator

overtrue commented May 9, 2017

如果设置的AccessToken失效

所以你的那个自动脚本存在的意义并不大咯

@leocxy
Copy link
Author

leocxy commented May 9, 2017

@overtrue 主要是我多个环境需要用到同一个AccessToken。而且这个脚本跑了很久也没什么问题。就不想动这个脚本。anyway谢谢啦。

@overtrue
Copy link
Collaborator

overtrue commented May 9, 2017

  1. 你的 token 来自脚本维护的对吧,那你的脚本保证了 “取到的 token 是可以正常非过期” 的
  2. 那既然 token 是没过期的,就肯定不会触发重试机制

@leocxy
Copy link
Author

leocxy commented May 9, 2017

@overtrue 这么说吧,token保存在生产环境的redis里,我在本地开发的时候,就需要从线上把token复制下来,然后再跑程序。但是,如果有人没有遵循这个规则,就有可能导致强token的情况,所以我希望把程序写死,token失效直接报错,而不是重新去获取。这么说明白吗?

其实我就想override 你 retryMiddleware
或者把 $retries 变成 >=3 而已。。。

@overtrue
Copy link
Collaborator

overtrue commented May 9, 2017

@leocxy 看了一下 3.0 要做这个改动很不方便(设计上的原因决定了要可配置这里改动比较大,虽然可以实现但是破坏了统一性),所以这里暂时不做修改了,而且这里最多重试两次,其实也影响不大,我们将在 4.0 支持这个可配置特性。建议你现在 可以考虑解决 “如果有人没有遵循这个规则” 这个问题可能比较容易。 抱歉。

@leocxy
Copy link
Author

leocxy commented May 9, 2017

没有,只是我这边情况比较特殊,看看你有没有解决方案。谢谢拉。

@leocxy leocxy closed this as completed May 9, 2017
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

2 participants