setAuthConfig(env('socket.google.api.config_file')); $this->setRedirectUri(base_url(env('socket.google.client.callback_url'))); $this->addScope(Oauth2::USERINFO_EMAIL); $this->addScope(Oauth2::USERINFO_PROFILE); // $this->setAccessType('offline'); $this->session = Services::session(); $this->token_code = $token_code; } public function setToken(string $access_code): void { // 토큰 정보 가져오기 $tokenInfo = $this->fetchAccessTokenWithAuthCode($access_code); if (isset($tokenInfo['error'])) { throw new ConfigException($tokenInfo['error']); } $token = $tokenInfo[$this->token_code]; // Google Service에 접근하기 위해 Access Token 설정 $this->setAccessToken($token); // 세션에 Token 값 설정 $this->session->set($this->token_code, $token); } public function getToken(): ?string { return $this->session->get($this->token_code); } }