在Symfony 2上,在IE中丢失与iframe的会话,在所有操作中

时间:2013-01-16 18:53:53

标签: facebook internet-explorer session iframe symfony

我的问题完全相同: On Symfony 2, losing session with iframe on IE

$response->headers->set('P3P', 'CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"');

但我有很多动作,我使用自动模板:

 /**
 * @Route("/", name="_welcome")
 * @Template()
 */
public function indexAction()
{
    ....  
    return array(...);
}

所以可以在所有动作中定义标题......

1 个答案:

答案 0 :(得分:1)

您可以为响应创建事件侦听器。

在这里,您可以找到使用Symfony2附带的Acme Bundle的示例:

http://php-and-symfony.matthiasnoback.nl/2011/10/symfony2-create-a-response-filter-and-set-extra-response-headers/

基本上你会调整这个例子并写:

<?php

namespace Acme\DemoBundle\EventListener;

use Symfony\Component\HttpKernel\Event\FilterResponseEvent;

class ResponseListener
{
    public function onKernelResponse(FilterResponseEvent $event)
    {
        $event->getResponse()->headers->set('P3P', 'CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"');
    }
}