在Symfony 2上,IE失去与iframe的会话

Syb*_*bio 1 iframe session internet-explorer facebook symfony

我正在使用Symfony 2开发一个Facebook应用程序。许多人都知道,当包含iframe时,IE会丢失会话!

多亏了header('P3P:CP =“ CAO PSA OUR”');可以解决此问题。

所以我的问题是发送标头('P3P:CP =“ CAO PSA OUR”'); 在Symfony 2。

我在行动中尝试了此操作:

$response = new Response($content);     
$response->headers->set('P3P:CP', 'CAO PSA OUR');
return array($response);
Run Code Online (Sandbox Code Playgroud)

没有成功,会话将丢失!

有这样做的主意吗?

Syb*_*bio 5

我找到了解决方案!

只需替换为:

$response->headers->set('P3P:CP', 'CAO PSA OUR'); 
Run Code Online (Sandbox Code Playgroud)

通过:

 $response->headers->set('P3P', 'CP="CAO PSA OUR"');
Run Code Online (Sandbox Code Playgroud)

或者更好,例如Wojciech Ba?cer说:

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

实际上,您必须在:之前的所有单词中传递第一个参数,而在第二个参数中传递其余参数!