我有一个asp.net MVC应用程序,我想为应用程序设置所有cookies sameSite=None。我已经在web.config中设置了下面的行,但是应用程序设置了没有SameSite=None的cookie。我在web.config中添加了以下两种配置。请参阅下面的屏幕截图,.AspNet.ApplicationCookie和__RequestVerificationToken cookie都放置在没有sameSite=None的地方。请帮帮忙。
<system.web>
<httpCookies requireSSL="true"/>
<sessionState cookieSameSite="None"/>
</system.web>

发布于 2021-08-15 12:00:38
我是从代码中做的,它起作用了
在global.asax.cs中:
public class MvcApplication : HttpApplication
{
protected void Application_PreSendRequestHeaders(object sender, EventArgs e)
{
.....
if (Request.Cookies.Count > 0)
{
foreach (string s in Request.Cookies.AllKeys)
{
HttpCookie c = Request.Cookies[s];
c.SameSite = System.Web.SameSiteMode.None;
Response.Cookies.Set(c);
}
}
....
}
}如果你想要特定的曲奇
if (Request.Cookies.Count > 0)
{
foreach (string s in Request.Cookies.AllKeys)
{
if (s.ToLower() == "__requestverificationtoken")
{
HttpCookie c = Request.Cookies[s];
c.SameSite = System.Web.SameSiteMode.Strict;
Response.Cookies.Set(c);
}
}
}https://stackoverflow.com/questions/63449547
复制相似问题