/**
 * Execute operations before OAuth2 Server sends a token response.
 *
 * @param \OAuth2Server|NULL $server
 * @param \OAuth2\Request $request
 * @param \OAuth2\Response $response
 */
function hook_oauth2_server_token($server, \OAuth2\Request $request, \OAuth2\Response $response)
{
    // Example: if the response is not successful, log a message.
    if ($response->getStatusCode() != 200) {
        watchdog('mymodule', 'Failed token response from server @server: @code @body', array('@server' => $server ? $server->name : NULL, '@code' => $response->getStatusCode(), '@body' => $response->getResponseBody()));
    }
}
 public function __construct(\OAuth2\Response $response)
 {
     $this->response = $response;
     $this->code = $response->getStatusCode();
     $this->description = $response->getStatusText();
     $this->message = $response->getResponseBody();
 }
Example #3
0
 /**
  * Convert the OAuth2 response to a \Zend\Http\Response
  *
  * @param $response OAuth2Response
  * @return \Zend\Http\Response
  */
 private function setHttpResponse(OAuth2Response $response)
 {
     $httpResponse = $this->getResponse();
     $httpResponse->setStatusCode($response->getStatusCode());
     $headers = $httpResponse->getHeaders();
     $headers->addHeaders($response->getHttpHeaders());
     $headers->addHeaderLine('Content-type', 'application/json');
     $httpResponse->setContent($response->getResponseBody());
     return $httpResponse;
 }
 /**
  * Copies values from the given Oauth2\Response to a PSR-7 Http Response.
  *
  * @param OAuth2\Response $oauth2Response The OAuth2 server response.
  *
  * @return \Psr\Http\Message\ResponseInterface
  */
 public static final function fromOauth2(OAuth2\Response $oauth2Response)
 {
     $headers = [];
     foreach ($oauth2Response->getHttpHeaders() as $key => $value) {
         $headers[$key] = explode(', ', $value);
     }
     $stream = fopen('php://temp', 'r+');
     if (!empty($oauth2Response->getParameters())) {
         fwrite($stream, $oauth2Response->getResponseBody());
         rewind($stream);
     }
     return new Response(new Stream($stream), $oauth2Response->getStatusCode(), $headers);
 }
 /**
  * @param Response $response
  */
 public function __construct(Response $response)
 {
     $this->setStatusCode($response->getStatusCode());
     $this->getHeaders()->addHeader(new GenericHeader('Content-type', 'application/json'))->addHeaders($response->getHttpHeaders());
     $this->setContent($response->getResponseBody('json'));
 }