在 ASP.NET Core 3.1 中创建具有自定义名称的自定义 cookie
Creating a custom cookie with a custom name in ASP.NET Core 3.1
在 ASP.NET 框架中,可以在构造函数中使用自定义名称定义自定义 cookie,如下所示:
HttpCookie customCookie = new HttpCookie("name");
customCookie.Expires = DateTime.Now.AddMinutes(10);
customCookie["key"] = "value";
context.Response.Cookies.Add(customCookie);
在 ASP.NET Core 中,方法已更改为更像这样的内容:
CookieOptions cookieOptions = new CookieOptions();
cookieOptions.Expires = DateTime.Now.AddMinutes(10);
context.Response.Cookies.Append("key", "value", cookieOptions);
似乎无法设置 cookie 的 "name",因为 CookieOptions class.
中没有定义选项
ASP.NET - 多值 cookie 兼容性
行
customCookie["key"] = "value";
是Values
属性的快捷方式。相当于
customCookie.Values["key"] = "value";
此 属性 允许使用多值 cookie,并且提供它是为了与以前版本的 Active Server Pages (ASP) 兼容。
ASP.NET 核心 cookie - 没有内置多值 cookie 的兼容性
ASP.NET Core 删除了对旧的遗留多值 cookie 的支持,因为此功能从未标准化。为什么不支持它的更多信息是 。 link 在 ASP.NET Core 中也有一个很好的多值 cookie 扩展。
这一行
context.Response.Cookies.Append("key", "value", cookieOptions);
向 HTTP 响应添加一个 cookie,并将新 cookie 的名称设置为 "key",并将其值设置为 "value"。
在 ASP.NET 框架中,可以在构造函数中使用自定义名称定义自定义 cookie,如下所示:
HttpCookie customCookie = new HttpCookie("name");
customCookie.Expires = DateTime.Now.AddMinutes(10);
customCookie["key"] = "value";
context.Response.Cookies.Add(customCookie);
在 ASP.NET Core 中,方法已更改为更像这样的内容:
CookieOptions cookieOptions = new CookieOptions();
cookieOptions.Expires = DateTime.Now.AddMinutes(10);
context.Response.Cookies.Append("key", "value", cookieOptions);
似乎无法设置 cookie 的 "name",因为 CookieOptions class.
中没有定义选项ASP.NET - 多值 cookie 兼容性
行
customCookie["key"] = "value";
是Values
属性的快捷方式。相当于
customCookie.Values["key"] = "value";
此 属性 允许使用多值 cookie,并且提供它是为了与以前版本的 Active Server Pages (ASP) 兼容。
ASP.NET 核心 cookie - 没有内置多值 cookie 的兼容性
ASP.NET Core 删除了对旧的遗留多值 cookie 的支持,因为此功能从未标准化。为什么不支持它的更多信息是
这一行
context.Response.Cookies.Append("key", "value", cookieOptions);
向 HTTP 响应添加一个 cookie,并将新 cookie 的名称设置为 "key",并将其值设置为 "value"。