gpt4 book ai didi

ASP.NET session Cookie - 指定基域

转载 作者:行者123 更新时间:2023-12-02 06:34:24 24 4
gpt4 key购买 nike

默认情况下,ASP.NET 将其 cookie 设置为使用“mydomain.com”作为其基础。我更愿意让他们使用“www.mydomain.com”,这样我就可以拥有其他无 cookie 的“sub.mydomain.com”子域。

我已经深入研究了 Session 和 Cookie 对象,虽然我可以找到如何为单个 cookie 设置域,但我没有找到为所有 Session cookie 设置域的方法。

有什么想法吗?

最佳答案

创建 ISessionIDManager ,由于您只想更改 cookie 域,我们将让默认域完成所有工作。

这是在 web.config 中 <system.web> 下的 sessionState 元素上配置的.

<sessionState sessionIDManagerType="MySessionIDManager" />

以及实现。

public class MySessionIDManager: SessionIDManager, ISessionIDManager
{
void ISessionIDManager.SaveSessionID( HttpContext context, string id, out bool redirected, out bool cookieAdded )
{
base.SaveSessionID( context, id, out redirected, out cookieAdded );

if (cookieAdded) {
var name = "ASP.NET_SessionId";
var cookie = context.Response.Cookies[ name ];
cookie.Domain = "example.com";
}
}
}

关于ASP.NET session Cookie - 指定基域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2326521/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com