【发布时间】:2012-08-10 21:35:05
【问题描述】:
我有两个应用程序在不同的域上运行:
- webformapp.com
- mvcapp.com
webformapp.com 有一个指向 mvcapp.com 的 iframe。现在,当 mvcapp.com 上有活动时,我想在 webformapp.com 中保持会话活动。我在 webformapp.com 中实现了一个通用处理程序(KeepAlive.ashx),并尝试从 mvcapp.com 调用以在 webformapp.com 上保持会话活动,但我猜是因为跨域访问限制,直接调用 webformapp.com/KeepAlive。来自 mvcapp.com 的 ashx 通过一个简单的 http get/post 请求没有命中处理程序。我猜here 给出的解决方案是针对同一个域的。在这种情况下实现保活机制的任何更简单的解决方案?
【问题讨论】:
-
如果应用程序位于不同的域中,并且其中一个在另一个应用程序的 iframe 中被引用;我不明白为什么两者中的任何一个的 Session 都可能变得无效。只要在 web.config 中配置了会话超时设置,这两个会话就应该继续有效。你如何测试这个?
-
两个网站相互独立。除非另有说明,否则 iframed 网站默认不会刷新父网站的会话。据我所知,iframe 只是另一个网站的窗口。
-
你的知识是正确的。我想我不明白这个问题,然后......
标签: asp.net session cross-domain keep-alive