public function testConvert() { $uri = '/foo'; $method = 'POST'; $parameters = array('a' => 1, 'b' => 2); $headers = array('c' => 3, 'd' => 4); $content = 'ups'; $request = new Request($method, $uri); $request->setParameters($parameters); $request->setHeaders($headers); $request->setContent($content); $cookies = array(); $files = array(); $server = array('HTTP_c' => 3, 'HTTP_d' => 4); $symfonyRequest = SymfonyRequest::create($uri, $method, $parameters, $cookies, $files, $server, $content); $converter = new SymfonyHttpFoundationRequestConverter(); $this->assertEquals($symfonyRequest, $converter->convert($request)); }
/** * @return Http\Response */ public function request(Request $request) { $uri = $request->getUri(); $requestConverter = new SymfonyHttpFoundationRequestConverter(); $symfonyRequest = $requestConverter->convert($request); if ($uri === '/oauth/token') { $response = $this->server->token($symfonyRequest); } elseif ($uri === '/resource') { $response = $this->server->resource($symfonyRequest, function () { $response = new Response(); $response->headers->set('content-type', 'text/plain'); $response->setContent('My resource!'); return $response; }); } else { throw new \Exception('Invalid request.'); } $responseConverter = new SymfonyHttpFoundationResponseConverter(); return $responseConverter->convert($response); }
public function request(Request $request) { $statusCode = f\get_or($request->getParameters(), 'statusCode', 200); $content = $request->getParameters() ? json_encode($request->getParameters()) : $request->getContent(); $headers = $request->getHeaders(); return new Response($statusCode, $content, $headers); }
public function convert(Request $request) { $headers = $request->getHeaders(); $keysMap = f\map_indexed(function ($v, $k) { return 'HTTP_' . $k; }, $headers); $server = f\rename_keys($headers, $keysMap); return SymfonyRequest::create($request->getUri(), $request->getMethod(), $request->getParameters(), $cookies = array(), $files = array(), $server, $request->getContent()); }
public function testSetters() { $request = new Request('GET', '/bar'); $headers = range(1, 20); $request->setHeaders($headers); $this->assertSame($headers, $request->getHeaders()); $parameters = range(1, 20); $request->setParameters($parameters); $this->assertSame($parameters, $request->getParameters()); $content = 'foobar'; $request->setContent($content); $this->assertSame($content, $request->getContent()); }
private function createRequest($method, $uri) { $request = new Request($method, $uri); $request->setParameters($this->requestParameters); $request->setHeaders($this->requestHeaders); $request->setContent($this->requestContent); return $this->filterRequest($request); }
private function cleanRequest(Request $request, SymfonyRequest $symfonyRequest) { if (!array_key_exists('Accept', $request->getHeaders())) { $symfonyRequest->headers->remove('Accept'); } }