提供更多背景信息:
我们有一个 Facebook 应用程序,其服务如下:
域名.com/fb/
我们有正常的网站,在
下提供服务
域名.com
我们的 Facebook 应用程序在 iframe 中提供 domain.com/fb/服务,可通过以下方式访问:
apps.facebook.com/ourappname/
我目前仅在 IE 上遇到问题,这导致 request.user 成为匿名用户,即使用户已登录(仅在 IE 中),在所有其他浏览器中一切正常。 request.user 为匿名的原因是未设置 session cookie。我通过检查 IE 中的 cookie 来验证这一点,django-debug-toolbar 也向我展示了这一点。
那么我该如何解决这个问题呢?
P3P header 已设置:
response['P3P'] = 'CP="IDC CURa ADMa OUR IND PHY ONL COM STA"'
return response
它们也是由 apache 本身添加的,所以双重只是想确保它有效。
最佳答案
这是 IE 与 iframe 网站的已知安全行为。这可以帮助: Cookie blocked/not saved in IFRAME in Internet Explorer
关于python - Django 不在 Internet Explorer 中存储 session cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10188393/