如果在ASP.NET中使用_CookieConsentPartial视图创建CookieConsentCookie,在IE和Edge浏览器中不起作用,可能是因为这些浏览器的默认设置不允许第三方Cookie。
解决方法如下:
Response.Cookies.Append
方法来手动创建和添加Cookie。确保在创建Cookie时设置SameSite
属性为None
,以便在IE和Edge中正常工作。public IActionResult SetCookie()
{
CookieOptions option = new CookieOptions();
option.SameSite = SameSiteMode.None; // 设置SameSite属性为None
option.Secure = true; // 设置Secure属性为true以启用安全Cookie
Response.Cookies.Append("CookieName", "CookieValue", option);
return View();
}
请注意,设置SameSite
属性为None
和Secure
属性为true
需要在使用HTTPS时才能正常工作。
节点下添加以下代码,以便在IE和Edge浏览器中启用Cookie:
这将在全局范围内启用SameSite
属性为None
和Secure
属性为true
的Cookie设置。
通过以上方法,您可以在IE和Edge浏览器中正常创建和使用CookieConsentCookie。