gpt4 book ai didi

c# - .net 核心 'Response.Cookies.Append' 不作为某个站工作

转载 作者:可可西里 更新时间:2023-11-01 08:56:12 24 4
gpt4 key购买 nike

我正在按照 ASP.NET Core 2.1 文档 ( https://learn.microsoft.com/en-us/aspnet/core/fundamentals/localization?view=aspnetcore-2.1#implement-a-strategy-to-select-the-languageculture-for-each-request ) 中的建议使用“Response.Cookies.Append”来设置文化。

它在我的工作站上运行得非常好。但是当我的同事获取我的更改时,它不起作用。

在调试过程中,我发现“Response.Cookies.Append”没有添加 cookie。还有其他人遇到这个问题吗?有什么解决办法吗?

最佳答案

您可能在 ConfigureServices-Method 的 Startup.cs 中配置了 CookiePolicyOption。

services.Configure<CookiePolicyOptions>(options =>
{
// This lambda determines whether user consent for non-essential cookies is needed for a given request.
options.CheckConsentNeeded = context => true;
options.MinimumSameSitePolicy = SameSiteMode.None;
});

如果是这样,您可以使用 CookieOption.IsEssential = true 设置 cookie,如下所示:

var cookieOptions = new Microsoft.AspNetCore.Http.CookieOptions()
{
Path = "/", HttpOnly = false, IsEssential = true, //<- there
Expires = DateTime.Now.AddMonths(1),
};

更新:如果您使用 SameSiteMode.None,您还必须将“Secure”属性设置为 true。该 cookie 仅适用于 https

另外,SameSiteMode.Unspecified 也可以在没有 https/secure-flag 的情况下工作

来源:https://learn.microsoft.com/en-us/aspnet/core/security/samesite?view=aspnetcore-3.1

关于c# - .net 核心 'Response.Cookies.Append' 不作为某个站工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52407647/

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