首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >当页面位于iFrame中时,未保存会话变量

当页面位于iFrame中时,未保存会话变量
EN

Stack Overflow用户
提问于 2011-06-16 15:57:01
回答 5查看 21.8K关注 0票数 5

我有一个带有列表框控件的aspx页面。列表框是从加载页面时从服务检索的集合填充的。当用户从列表框中选择一项时,页面回发,在重新加载之前将检索到的对象添加到会话中。在重新加载时,我使用会话对象,而不必再次调用服务。

这一切都很好,直到我从iFrame中访问页面。当页面在iFrame中时,不检索会话对象(会话“blah”为空)。当页面不在iFrame中时,此代码可以很好地工作。

我使用的是IIS7和windows server 2008。为了允许在iFrame中使用会话变量,我需要在ISS中做些什么吗?有没有人知道其他可能导致这种情况发生的事情?

谢谢,尼尔

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2011-06-23 16:45:52

实际上不要紧,我只是清空了C:\Windows\Microsoft.NET\Framework64\v2.0.50727\Temporary ASP.NET Files中的文件并重新启动了IIS,一切都正常

票数 4
EN

Stack Overflow用户

发布于 2011-06-16 17:34:13

IE对iframe中加载的第三方内容给予较低级别的信任。这会阻止会话cookie。

您可以通过在IIS中设置P3P头来解决此问题:

代码语言:javascript
运行
复制
Name = p3p
Value = CP="IDC DSP COR CURa ADMa OUR IND PHY ONL COM STA"

另请参阅

票数 10
EN

Stack Overflow用户

发布于 2020-02-05 08:37:04

在我的例子中,项目是.net框架4.6.1。我已经升级到4.7.2版本,并将以下密钥添加到web.config

代码语言:javascript
运行
复制
<system.web>
    <sessionState cookieSameSite="None"/>

这样,第三方Iframe会话就可以开始工作了。

在进行此更改之前,最好先阅读此https://docs.microsoft.com/en-us/aspnet/samesite/system-web-samesite

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6368750

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档