/** * 处理业务 */ public function handle() { $accessToken = md5(PhalconPlusUtil::Guid()); $secretToken = md5(PhalconPlusUtil::Guid()); $expiresIn = $this->di->get('apiConfig')->expires_in; // 记录数据 $access = new ApiAccessToken(); $access->appAccess = $this->appAccess->id; $access->accessToken = $accessToken; $access->secretToken = $secretToken; $access->expiresIn = $expiresIn; $access->clientInfo = $this->parameters->postBody ? $this->parameters->postBody : ' '; if ($access->save()) { // 返回数据 $this->setResponse(['access_token' => $accessToken, 'secret_token' => $secretToken, 'expires_in' => $expiresIn]); } else { $error = ''; foreach ($access->getMessages() as $msg) { $error .= $msg . ','; } $this->error(ResultStatus::DATABASE_ERROR, '数据库异常.'); $this->di->get('logger')->error('数据库异常, 保存授权信息异常, GET:' . json_encode($_GET) . ', POST:' . $this->request->getRawBody() . ', error: ' . $error); } }
/** * 保存用户授权 * @param int $accessToken * @param int $userId * @return bool */ public function saveUserAuth($accessToken, $userId) { $token = md5(PhalconPlusUtil::Guid()); // 记录数据 $userToken = new ApiUserAuth(); $userToken->userId = $userId; $userToken->accessToken = $accessToken; $userToken->userToken = $token; if ($userToken->save()) { $this->userAuth = $userToken; return true; } $error = ''; foreach ($userToken->getMessages() as $msg) { $error .= $msg . ','; } $this->errorLog(ResultStatus::DATABASE_ERROR, '数据库异常.'); $this->di->get('logger')->errorLog('数据库异常, 保存授权信息异常, GET:' . json_encode($_GET) . ', accessToken:' . $accessToken . ', userId' . $userId . ', error: ' . $error); return false; }