添加过期openid处理
This commit is contained in:
parent
0d72b05c62
commit
a4e99d45ff
@ -227,12 +227,17 @@ class KefuController {
|
||||
}
|
||||
$ret_info = json_decode($response, true);
|
||||
error_log(json_encode($response));
|
||||
if (isset($ret_info['errcode']) && ($ret_info['errcode'] == 40001 || $ret_info['errcode'] == 40003)) {
|
||||
if (isset($ret_info['errcode']) && ($ret_info['errcode'] == 40001 || $ret_info['errcode'] == 40003 || $ret_info['errcode'] == 41001)) {
|
||||
if ($ret_info['errcode'] == 40003) {
|
||||
//无效的openid,(更换appid appkey导致之前的openid失效)
|
||||
//从db里删除这种过期的openid
|
||||
return true;
|
||||
}
|
||||
error_log('重新获取access_token');
|
||||
$r = $this->getRedis($gameid);
|
||||
$r->del('kf_token:' . $gameid . ':');
|
||||
$access_token = $this->getAccessToken($gameid);
|
||||
$url = "https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=$access_token";
|
||||
$url = "https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=". urlencode($access_token);
|
||||
|
||||
$response = '';
|
||||
error_log(json_encode($data, JSON_UNESCAPED_UNICODE));
|
||||
@ -243,6 +248,7 @@ class KefuController {
|
||||
phpcommon\sendError(ERR_RETRY, '系统繁忙');
|
||||
return;
|
||||
}
|
||||
error_log('retry:' . $response);
|
||||
$ret_info = json_decode($response, true);
|
||||
}
|
||||
return !empty($ret_info) && $ret_info['errcode'] == 0;
|
||||
@ -402,6 +408,7 @@ class KefuController {
|
||||
$r->pexpire('kf_token:' . $gameid . ':', 1000 * ($respobj['expires_in'] - 60 * 1));
|
||||
return $respobj['access_token'];
|
||||
} else {
|
||||
error_log('getAccessToken:' . $response);
|
||||
return '';
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user