提交 d3ca3e25 编写于 作者: 李光春's avatar 李光春

- 优化accessToken已过期问题

上级 87606421
......@@ -642,6 +642,7 @@ class WebAppService extends Service
'expires_time' => '',
];
if (empty($accessToken['expires_time'])) {
// 文件不存在
$accessToken_res = HttpService::instance()
->url("{$this->api_url}cgi-bin/token?grant_type={$this->grant_type}&appid={$this->app_id}&secret={$this->app_secret}")
->toArray();
......@@ -649,6 +650,7 @@ class WebAppService extends Service
file_put_contents($file, json_encode($accessToken_res, JSON_UNESCAPED_UNICODE));
$accessToken = $accessToken_res;
} else if (!isset($accessToken['access_token'])) {
// 内容不存在
$accessToken_res = HttpService::instance()
->url("{$this->api_url}cgi-bin/token?grant_type={$this->grant_type}&appid={$this->app_id}&secret={$this->app_secret}")
->toArray();
......@@ -663,6 +665,17 @@ class WebAppService extends Service
file_put_contents($file, json_encode($accessToken_res, JSON_UNESCAPED_UNICODE));
$accessToken = $accessToken_res;
}
$judge = HttpService::instance()
->url("{$this->api_url}cgi-bin/getcallbackip?access_token={$accessToken['access_token']}")
->toArray();
if (!empty($judge)) {
$accessToken_res = HttpService::instance()
->url("{$this->api_url}cgi-bin/token?grant_type={$this->grant_type}&appid={$this->app_id}&secret={$this->app_secret}")
->toArray();
$accessToken_res['expires_time'] = time() + 6000;
file_put_contents($file, json_encode($accessToken_res, JSON_UNESCAPED_UNICODE));
$accessToken = $accessToken_res;
}
return $accessToken;
} else if ($this->cache == "mysql") {
$access_token = [];
......@@ -679,6 +692,16 @@ class WebAppService extends Service
dtacache($file, $accessToken_res['access_token'], 6000);
$access_token['access_token'] = $accessToken_res['access_token'];
}
$judge = HttpService::instance()
->url("{$this->api_url}cgi-bin/getcallbackip?access_token={$accessToken['access_token']}")
->toArray();
if (!empty($judge)) {
$accessToken_res = HttpService::instance()
->url("{$this->api_url}cgi-bin/token?grant_type={$this->grant_type}&appid={$this->app_id}&secret={$this->app_secret}")
->toArray();
dtacache($file, $accessToken_res['access_token'], 6000);
$access_token['access_token'] = $accessToken_res['access_token'];
}
return $access_token;
} else throw new WeChatException("驱动方式错误");
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册