【问题标题】:How can cookieless session be set or not depending on the domain of the request in ASP.NET?如何根据 ASP.NET 中请求的域设置或不设置 cookieless 会话?
【发布时间】:2012-11-18 21:09:47
【问题描述】:

我有一个 MVC 3 应用程序,它为两个不同域上的请求提供服务。对 firstdomain.com 的请求来自 iframe,对 seconddomain.com 的请求来自普通浏览器窗口。我需要在 iframe 中使用无 cookie 会话,但希望在普通浏览器中保留基于 cookie 的会话。

会话类型通常在 web.config 中通过设置以下内容来确定:

<system.web>
   ...
   <sessionState cookieless="UseUri"/>
   ...
</system.web>

但这适用于每个请求,无论域如何。可以在服务器上拥有该站点的两个副本,每个域一个,并且每个具有不同的 sessionState cookieless 设置值,但出于多种原因,我想避免这种情况。有没有办法在运行 Web 应用程序的单个实例时根据请求的域切换此功能?

【问题讨论】:

    标签: asp.net asp.net-mvc-3 iframe session-state cookieless


    【解决方案1】:

    您可以将这两个项目拆分为单独的项目,每个项目都有自己的 web.config。这是一种比运行两个单独的实例更好的想法。

    只是出于好奇,为什么是饼干?缓存或会话可能会更好。

    【讨论】:

    • 这是一个跨域的 iframe,一些浏览器不喜欢在那个盘子上放他们的 cookie。 :)
    • 啊,我明白了。愚蠢的浏览器不喜欢他们盘子里的饼干,哈哈。
    猜你喜欢
    • 1970-01-01
    • 2014-04-17
    • 2013-11-19
    • 1970-01-01
    • 2011-04-01
    • 2021-08-10
    • 2019-08-24
    • 2014-09-04
    • 1970-01-01
    相关资源
    最近更新 更多