cookie乱码
为什么cookie在VS里运行时没问题,一到IIS里就乱码?
我知道是编码的问题,用UrlEncode/UrlDecode就能解决问题,但是有几个问题:
1. VS里没问题,IIS里就有问题,是不是IIS的设置有问题?
2. 大家都说是ASP与ASP.net共享Cookie时才会有这种问题,就连微软的解释也是这样:“默认情况下 ASP.NET 不以 UrlEncode 格式对 Cookie 进行编码”(http://support.microsoft.com/default.aspx?scid=kb;zh-cn;313282),而我没有用到ASP和ASP.net共享Cookie,即使在同一个页面里接连写读cookie都会乱码。
3. 真正蹊跷的在这里,请大耐心看完并自己试试,分别建一个a.asp和b.aspx,页面不要设编码类型
a.asp
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><% Response.Cookies("a") = "你好" Response.Write(Request.Cookies("a")) Response.Write(Request.Cookies("b"))%><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><% Response.Cookies("b").Value = "你好" Response.Write(Request.Cookies("a").Value) Response.Write(Request.Cookies("b").Value)%>