コード例 #1
0
 /**
  * Gets the google OAuth access token.
  *
  * @throws GoogleAnalyticsException If the access token can not be retrieved.
  *
  * @return string The access token.
  */
 public function getAccessToken()
 {
     if ($this->accessToken === null) {
         $headers = array('Content-Type' => 'application/x-www-form-urlencoded');
         $content = array('grant_type' => 'assertion', 'assertion_type' => 'http://oauth.net/grant_type/jwt/1.0/bearer', 'assertion' => $this->generateJsonWebToken());
         $response = json_decode($this->httpAdapter->postContent($this->url, $headers, $content));
         if (isset($response->error)) {
             throw GoogleAnalyticsException::invalidAccessToken($response->error);
         }
         $this->accessToken = $response->access_token;
     }
     return $this->accessToken;
 }
コード例 #2
0
ファイル: OAuth.php プロジェクト: widop/twitter-oauth
 /**
  * Sends an OAuth request.
  *
  * @param \Widop\Twitter\OAuth\OAuthRequest $request The OAuth request.
  *
  * @throws \RuntimeException If the request method is not supported.
  *
  * @return \Widop\Twitter\OAuth\OAuthResponse The OAuth response.
  */
 public function sendRequest(OAuthRequest $request)
 {
     switch ($request->getMethod()) {
         case OAuthRequest::METHOD_GET:
             $httpResponse = $this->httpAdapter->getContent($request->getUrl(), $request->getHeaders());
             break;
         case OAuthRequest::METHOD_POST:
             $postParameters = array();
             foreach ($request->getPostParameters() as $name => $value) {
                 $postParameters[rawurldecode($name)] = rawurldecode($value);
             }
             $httpResponse = $this->httpAdapter->postContent($request->getUrl(), $request->getHeaders(), $postParameters, $request->getFileParameters());
             break;
         default:
             throw new \RuntimeException(sprintf('The request method "%s" is not supported.', $request->getMethod()));
     }
     $response = new OAuthResponse($httpResponse, $request->getResponseFormat());
     if (!$response->isValid()) {
         throw new OAuthException('The http response is not valid.', $response);
     }
     return $response;
 }
コード例 #3
0
 /**
  * @expectedException \Widop\HttpAdapter\HttpAdapterException
  */
 public function testPostContentWithInvalidUrl()
 {
     $this->httpAdapter->postContent('foo');
 }