本文整理汇总了PHP中Symfony\Component\HttpFoundation\ResponseHeaderBag类的典型用法代码示例。如果您正苦于以下问题:PHP ResponseHeaderBag类的具体用法?PHP ResponseHeaderBag怎么用?PHP ResponseHeaderBag使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了ResponseHeaderBag类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: Cookie
function it_should_not_encrypt_a_cookie(Request $request, FilterResponseEvent $event, ResponseHeaderBag $headers, Response $response)
{
$currentCookie = new Cookie('not_session', 'test', 3600, '/account', 'example.com', true, false);
$headers->getCookies()->willReturn([$currentCookie]);
$response->headers = $headers;
$event->getRequest()->willReturn($request);
$event->getRequestType()->willReturn(HttpKernelInterface::MASTER_REQUEST);
$event->getResponse()->willReturn($response);
$this->onKernelResponse($event)->shouldReturn(null);
}
示例2: testCacheControlHeader
public function testCacheControlHeader()
{
$bag = new ResponseHeaderBag(array());
$this->assertEquals('no-cache', $bag->get('Cache-Control'));
$this->assertTrue($bag->hasCacheControlDirective('no-cache'));
$bag = new ResponseHeaderBag(array('Cache-Control' => 'public'));
$this->assertEquals('public', $bag->get('Cache-Control'));
$this->assertTrue($bag->hasCacheControlDirective('public'));
$bag = new ResponseHeaderBag(array('ETag' => 'abcde'));
$this->assertEquals('private, must-revalidate', $bag->get('Cache-Control'));
$this->assertTrue($bag->hasCacheControlDirective('private'));
$this->assertTrue($bag->hasCacheControlDirective('must-revalidate'));
$this->assertFalse($bag->hasCacheControlDirective('max-age'));
$bag = new ResponseHeaderBag(array('Expires' => 'Wed, 16 Feb 2011 14:17:43 GMT'));
$this->assertEquals('private, must-revalidate', $bag->get('Cache-Control'));
$bag = new ResponseHeaderBag(array('Expires' => 'Wed, 16 Feb 2011 14:17:43 GMT', 'Cache-Control' => 'max-age=3600'));
$this->assertEquals('max-age=3600, private', $bag->get('Cache-Control'));
$bag = new ResponseHeaderBag(array('Last-Modified' => 'abcde'));
$this->assertEquals('private, must-revalidate', $bag->get('Cache-Control'));
$bag = new ResponseHeaderBag(array('Etag' => 'abcde', 'Last-Modified' => 'abcde'));
$this->assertEquals('private, must-revalidate', $bag->get('Cache-Control'));
$bag = new ResponseHeaderBag(array('cache-control' => 'max-age=100'));
$this->assertEquals('max-age=100, private', $bag->get('Cache-Control'));
$bag = new ResponseHeaderBag(array('cache-control' => 's-maxage=100'));
$this->assertEquals('s-maxage=100', $bag->get('Cache-Control'));
$bag = new ResponseHeaderBag(array('cache-control' => 'private, max-age=100'));
$this->assertEquals('max-age=100, private', $bag->get('Cache-Control'));
$bag = new ResponseHeaderBag(array('cache-control' => 'public, max-age=100'));
$this->assertEquals('max-age=100, public', $bag->get('Cache-Control'));
$bag = new ResponseHeaderBag();
$bag->set('Last-Modified', 'abcde');
$this->assertEquals('private, must-revalidate', $bag->get('Cache-Control'));
}
示例3: testWhenOnFirstPageAndPartialRestSet_nextPageIsNotLinked
public function testWhenOnFirstPageAndPartialRestSet_nextPageIsNotLinked()
{
$headers = new ResponseHeaderBag();
$headerSetter = new PaginationHeaderSetter($headers);
$headerSetter->setHeaders('http://localhost/test', new SimplePaginationInfo(1, 10), 9);
$this->assertSame([], $headers->get('Link', null, false));
}
示例4: it_should_prepare_the_bag
public function it_should_prepare_the_bag(Request $request, Response $response, ResponseHeaderBag $bag)
{
$response->headers = $bag;
$bag->set("content-type", "application/json")->shouldBeCalledTimes(1);
$this->test($request, $response);
$this->getBag()->shouldBe(["test" => "Ok"]);
}
示例5: testCacheControlHeader
public function testCacheControlHeader()
{
$bag = new ResponseHeaderBag(array(), 'response');
$this->assertEquals('no-cache', $bag->get('Cache-Control'));
$this->assertTrue($bag->hasCacheControlDirective('no-cache'));
$bag = new ResponseHeaderBag(array('Cache-Control' => 'public'), 'response');
$this->assertEquals('public', $bag->get('Cache-Control'));
$this->assertTrue($bag->hasCacheControlDirective('public'));
$bag = new ResponseHeaderBag(array('ETag' => 'abcde'), 'response');
$this->assertEquals('private, max-age=0, must-revalidate', $bag->get('Cache-Control'));
$this->assertTrue($bag->hasCacheControlDirective('private'));
$this->assertTrue($bag->hasCacheControlDirective('must-revalidate'));
$this->assertEquals(0, $bag->getCacheControlDirective('max-age'));
$bag = new ResponseHeaderBag(array('Last-Modified' => 'abcde'), 'response');
$this->assertEquals('private, max-age=0, must-revalidate', $bag->get('Cache-Control'));
$bag = new ResponseHeaderBag(array('Etag' => 'abcde', 'Last-Modified' => 'abcde'), 'response');
$this->assertEquals('private, max-age=0, must-revalidate', $bag->get('Cache-Control'));
$bag = new ResponseHeaderBag(array('cache-control' => 'max-age=100'), 'response');
$this->assertEquals('max-age=100, private', $bag->get('Cache-Control'));
$bag = new ResponseHeaderBag(array('cache-control' => 's-maxage=100'), 'response');
$this->assertEquals('s-maxage=100', $bag->get('Cache-Control'));
$bag = new ResponseHeaderBag(array('cache-control' => 'private, max-age=100'), 'response');
$this->assertEquals('max-age=100, private', $bag->get('Cache-Control'));
$bag = new ResponseHeaderBag(array('cache-control' => 'public, max-age=100'), 'response');
$this->assertEquals('max-age=100, public', $bag->get('Cache-Control'));
}
示例6: testToStringIncludesCookieHeaders
public function testToStringIncludesCookieHeaders()
{
$bag = new ResponseHeaderBag(array());
$bag->setCookie(new Cookie('foo', 'bar'));
$this->assertContains("Set-Cookie: foo=bar; path=/; httponly", explode("\r\n", $bag->__toString()));
$bag->clearCookie('foo');
$this->assertContains("Set-Cookie: foo=deleted; expires=" . gmdate("D, d-M-Y H:i:s T", time() - 31536001) . "; httponly", explode("\r\n", $bag->__toString()));
}
示例7: it_sets_cookie_when_it_does
public function it_sets_cookie_when_it_does(FilterResponseEvent $event, Response $response, ResponseHeaderBag $headers)
{
$headers->setCookie(Argument::type('Symfony\\Component\\HttpFoundation\\Cookie'));
$response->headers = $headers;
$event->getRequestType()->willReturn(HttpKernelInterface::MASTER_REQUEST)->shouldBeCalled();
$event->getRequest()->willReturn($this->secureRequest)->shouldBeCalled();
$event->getResponse()->willReturn($response)->shouldBeCalled();
$this->onKernelResponse($event);
}
示例8: function
function it_should_set_response_time_to_response_header(Request $req, Response $res, ResponseHeaderBag $bag)
{
$res->headers = $bag;
static::$timer->getStartMilliseconds()->willReturn(1426009224940.0);
static::$timer->getEndMilliseconds()->willReturn(1426009226260.0);
$bag->set('X-Response-Time', '1320ms', false)->shouldBeCalled();
$next = function ($req) use($res) {
return $res->getWrappedObject();
};
$this->handle($req, $next)->shouldReturn($res);
}
示例9: function
function it_should_set_response_time_to_response_header(Request $req, Response $res, ResponseHeaderBag $bag)
{
$res->headers = $bag;
$uuid = '25769c6c-d34d-4bfe-ba98-e0ee856f3e7a';
static::$generator->getV4Uuid()->willReturn($uuid);
$req->merge(['request-id' => $uuid])->shouldBeCalled();
$bag->set('Request-Id', $uuid, false)->shouldBeCalled();
$next = function ($req) use($res) {
return $res->getWrappedObject();
};
$this->handle($req, $next)->shouldReturn($res);
}
示例10:
function it_persists_fake_channel_codes_in_a_cookie(FakeChannelCodeProviderInterface $fakeHostnameProvider, FilterResponseEvent $filterResponseEvent, Request $request, Response $response, ResponseHeaderBag $responseHeaderBag)
{
$filterResponseEvent->getRequestType()->willReturn(HttpKernelInterface::MASTER_REQUEST);
$filterResponseEvent->getRequest()->willReturn($request);
$fakeHostnameProvider->getCode($request)->willReturn('fake_channel_code');
$filterResponseEvent->getResponse()->willReturn($response);
$response->headers = $responseHeaderBag;
$responseHeaderBag->setCookie(Argument::that(function (Cookie $cookie) {
if ($cookie->getName() !== '_channel_code') {
return false;
}
if ($cookie->getValue() !== 'fake_channel_code') {
return false;
}
return true;
}))->shouldBeCalled();
$this->onKernelResponse($filterResponseEvent);
}
示例11: testRemoveCookie
public function testRemoveCookie()
{
$bag = new ResponseHeaderBag();
$bag->setCookie(new Cookie('foo', 'bar', 0, '/path/foo', 'foo.bar'));
$bag->setCookie(new Cookie('bar', 'foo', 0, '/path/bar', 'foo.bar'));
$cookies = $bag->getCookies(ResponseHeaderBag::COOKIES_ARRAY);
$this->assertTrue(isset($cookies['foo.bar']['/path/foo']));
$bag->removeCookie('foo', '/path/foo', 'foo.bar');
$cookies = $bag->getCookies(ResponseHeaderBag::COOKIES_ARRAY);
$this->assertFalse(isset($cookies['foo.bar']['/path/foo']));
$bag->removeCookie('bar', '/path/bar', 'foo.bar');
$cookies = $bag->getCookies(ResponseHeaderBag::COOKIES_ARRAY);
$this->assertFalse(isset($cookies['foo.bar']));
}
示例12: getHttpHeaders
protected function getHttpHeaders(Request $httpRequest, $result)
{
$headers = new ResponseHeaderBag();
$headers->set("Content-Type", $this->getMimeType() . "; charset=utf-8");
return $headers;
}
示例13: testMakeDispositionFail
/**
* @dataProvider provideMakeDispositionFail
* @expectedException \InvalidArgumentException
*/
public function testMakeDispositionFail($disposition, $filename)
{
$headers = new ResponseHeaderBag();
$headers->makeDisposition($disposition, $filename);
}
示例14: setPageDataIfExists
/**
* @param array $app
* @param ResponseHeaderBag $headers
*/
private function setPageDataIfExists(array $app, ResponseHeaderBag $headers)
{
if (isset($app[Headers::PAGE_DATA_KEY])) {
$headers->set(Headers::PAGE_DATA_HEADER, json_encode(Escaper::escape($app[Headers::PAGE_DATA_KEY])));
}
}
示例15:
function it_listens_cookie_event(CookieEvent $cookieEvent, Response $response, ResponseHeaderBag $responseHeaderBag, SessionInterface $session)
{
$cookieEvent->getSession()->shouldBeCalled()->willReturn($session);
$session->has('access_token')->shouldBeCalled()->willReturn(true);
$session->has('refresh_token')->shouldBeCalled()->willReturn(true);
$cookieEvent->getResponse()->shouldBeCalled()->willReturn($response);
$session->get('access_token')->shouldBeCalled()->willReturn('accesstoken');
$session->get('refresh_token')->shouldBeCalled()->willReturn('refreshtoken');
$responseHeaderBag->setCookie(Argument::type('Symfony\\Component\\HttpFoundation\\Cookie'))->shouldBeCalled();
$responseHeaderBag->setCookie(Argument::type('Symfony\\Component\\HttpFoundation\\Cookie'))->shouldBeCalled();
$response->headers = $responseHeaderBag;
$this->onCookieEvent($cookieEvent);
}