From c6c6c19379a105bad5b899899dd5573af9658ebf Mon Sep 17 00:00:00 2001 From: DiscuzX <153619335@qq.com> Date: Sun, 1 Jan 2023 05:46:50 +0000 Subject: [PATCH] =?UTF-8?q?QQ=E4=BA=92=E8=81=94PHP8=E5=85=BC=E5=AE=B9?= =?UTF-8?q?=E6=80=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: DiscuzX <153619335@qq.com> --- .../source/plugin/qqconnect/lib/ConnectOAuth.php | 4 ++-- upload/source/plugin/qqconnect/lib/OAuth.php | 16 ++++++++++------ 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/upload/source/plugin/qqconnect/lib/ConnectOAuth.php b/upload/source/plugin/qqconnect/lib/ConnectOAuth.php index 521079128..7b384336d 100644 --- a/upload/source/plugin/qqconnect/lib/ConnectOAuth.php +++ b/upload/source/plugin/qqconnect/lib/ConnectOAuth.php @@ -389,9 +389,9 @@ class Cloud_Service_Client_ConnectOAuth extends Cloud_Service_Client_OAuth { 'access_token' => $result['access_token'] ); $response = $this->callback($this->dfsockopen($this->_openIdURL_V2.'?'.$utilService->httpBuildQuery($params, '', '&'))); - if($response->openid) { + if($response['openid']) { $result = array( - 'openid' => $response->openid, + 'openid' => $response['openid'], 'access_token' => $result['access_token'] ); return $result; diff --git a/upload/source/plugin/qqconnect/lib/OAuth.php b/upload/source/plugin/qqconnect/lib/OAuth.php index 8691f6108..260182a49 100644 --- a/upload/source/plugin/qqconnect/lib/OAuth.php +++ b/upload/source/plugin/qqconnect/lib/OAuth.php @@ -39,13 +39,17 @@ class Cloud_Service_Client_OAuth { } public function callback($response) { - if(strpos($response, "callback") === false) { - return array(); + $return = array(); + if(strpos($response, "callback") !== false) { + $lpos = strpos($response, "("); + $rpos = strrpos($response, ")"); + $response = substr($response, $lpos + 1, $rpos - $lpos - 1); + $return = json_decode($response, true); + if(!is_array($return)) { + $return = array(); + } } - $lpos = strpos($response, "("); - $rpos = strrpos($response, ")"); - $response = substr($response, $lpos + 1, $rpos - $lpos - 1); - return json_decode($response); + return $return; } public function getRequest($requestURL, $extra = array(), $oauthMethod = 'GET', $multi = array()) { -- Gitee