【问题标题】:ASP MVC load existing Session State based on SessionIDASP MVC 根据 SessionID 加载现有的 Session 状态
【发布时间】:2016-10-17 13:09:33
【问题描述】:

在浏览器中禁用第 3 方 cookie 时,加载到 iframe 中的页面会禁用 cookie。当在父(主)窗口中加载 ASP MVC 应用程序资源并且在 iframe 中加载相同的应用程序时,稍后的应用程序不会发送会话 cookie,因此不会与顶级页面共享会话。

我解决这个问题的第一个想法是在 iframe url 中提供 SessionID 作为参数,并以某种方式基于该 SessionID 加载首页的现有会话状态。 有可能吗?

【问题讨论】:

    标签: asp.net asp.net-mvc session


    【解决方案1】:

    ASP.Net 已经有cookieless Session 选项。您只需要在 web.config 中开启即可。

    <sessionState cookieless="true" />

    我在传入的 ASP.Net Web 表单中使用了 cookieless 选项。我还没有真正在 ASP.Net MVC 中测试过。

    【讨论】:

    • 谢谢这是我正在探索的选项,但它显然修改了我不想触摸的 url 的路径部分(我们大量使用 IIS 重写)。除非有办法强制 asp 使用查询字符串来携带会话 ID。
    • 我个人没有尝试在查询字符串中添加 SessionID。但是,您可能希望查看更强大且开箱即用的基于令牌的身份验证。它最初是为不能使用 cookie 的移动应用程序设计的。
    猜你喜欢
    • 1970-01-01
    • 2020-07-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多