Пример #1
0
 public function testResponseCanRenderStatusLine()
 {
     $response = new Response();
     $response->setVersion(1.1);
     $response->setStatusCode(Response::STATUS_CODE_404);
     $this->assertEquals('HTTP/1.1 404 Not Found', $response->renderStatusLine());
     $response->setReasonPhrase('Foo Bar');
     $this->assertEquals('HTTP/1.1 404 Foo Bar', $response->renderStatusLine());
 }
Пример #2
0
 private function buildResponse($format, HttpResponse $httpResponse, OAuthResponse $oauthResponse)
 {
     $httpResponse->setVersion($oauthResponse->version);
     $httpResponse->setStatusCode($oauthResponse->getStatusCode());
     $headers = $httpResponse->getHeaders();
     foreach ($oauthResponse->getHttpHeaders() as $name => $value) {
         $headers->addHeaderLine(sprintf('%s: %s', $name, $value));
     }
     switch ($format) {
         case 'json':
             $headers->addHeaderLine('Content-Type: application/json');
             $httpResponse->setContent(json_encode($oauthResponse->getParameters()));
             break;
         case 'xml':
             $headers->addHeaderLine('Content-Type: text/xml');
             $xml = new SimpleXMLElement('<response/>');
             foreach ($oauthResponse->getParameters() as $key => $param) {
                 $xml->addChild($key, $param);
             }
             $httpResponse->setContent($xml->asXML());
             break;
         default:
             throw new RuntimeException('Invalid format provided: ' . $format);
     }
     return $httpResponse;
 }