如果Web.Config保护所有Cookie,如何在Asp.Net中不保护一个Cookie?

问题描述

如果Web.config具有此设置:

<httpCookies httpOnlyCookies="true" requireSSL="true" />

所有cookie现在都带有Secure和HttpOnly标志,但是如果我确实需要一个cookie不安全怎么办,以便可以将某些内容传递给客户端以使其javascript读取其中的数据,该怎么办?我该如何不使用Secure和HttpOnly标志来使该Cookie出现?

我需要此数据可用于任何页面,除了cookie之外还有其他方法吗?

谢谢

解决方法

原来,代码中的设置取代了Web.Config中的设置。只有未通过Secure和HttpOnly指定的cookie才会受到Web.Config中设置的影响。

示例代码:

filterContext.HttpContext.Response.Cookies.Add(new HttpCookie("mycookie","mycookievalue") {
                Secure = false,HttpOnly = false
            });

因此,无论Web.Config中的设置为何,“ mycookie”都不会得到保护