/** * Fetch and store a new App access_token from Facebook * * @return string the access_token * @throws FacebookAuthException if our request was denied * @throws FacebookApiException if some unexpected response was received from Facebook */ protected function fetchAccessToken() { $request = new GraphRequest(); $client = $request->getClient(); $request = $this->buildFacebookHttpRequest($client); $response = $request->send(); if ($response->getStatusCode() == 200) { parse_str($response->getBody(true), $arr); if (isset($arr['access_token'])) { $this->session_cached = new \DateTime(); $this->access_token = (string) $arr['access_token']; } else { throw new FacebookApiException('Unexpected Facebook error'); } } else { throw new FacebookAuthException(sprintf('Facebook error: %s', $response->getBody(true))); } }
/** * Prepare a Graph HTTP request * * @return \Guzzle\Http\Message\RequestInterface */ public function getGraphHttpRequest() { $graph_request = new GraphRequest(); $client = $graph_request->getClient(); $request = $this->buildFacebookHttpRequest($client); return $request; }