IIS部署后中文Cookie乱码
Posted 彬子
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IIS部署后中文Cookie乱码相关的知识,希望对你有一定的参考价值。
同样问题记录一下 :
ASP.NET在VS2008下开发,使用内置的服务器时,一切良好,可是使用IIS时,完全一样的代码,突然很多数据得不到了。
因为使用的是母版页,一开始以为是Page_Load的顺序问题,搜了大半天,可始终无法解决。同样的SQL语句,where匹配包含俩个选项,用户名和单位,直接手写就OK,用变量就不行,抓狂了一上午。
后来发现用户名用的是英文,而单位是中文,原来是IIS的cookie存在乱码问题,一个小毛病折腾了大半天。。。 上网搜了一下,2分钟搞定,存入cookie的时候先编码,读取的时候再解码就可以了。具体代码如下:
//写入cookies时 string t =HttpUtility.UrlEncode(要写入到cookies的中文值); HttpCookie c = new HttpCookie("user_realname", t); Response.Cookies.Add(c); //读取cookies时 t=获取的中文cookies值; t = HttpUtility.UrlDecode(teacher_name);
或直接
//写入cookies时 Response.Cookies["unitId"].Value=HttpUtility.UrlEncode(unitId); //读取cookies时 string unitid = page.Request.Cookies["unitId"].Value.ToString().Trim(); unitid = HttpUtility.UrlDecode(unitid);
注意在GridView和其他涉及到该cookie字段的地方也要进行修改.
————————————————
原文链接:https://blog.csdn.net/war132553/java/article/details/5951431
以上是关于IIS部署后中文Cookie乱码的主要内容,如果未能解决你的问题,请参考以下文章
cookie编码乱码问题与cookie禁用后session操作
java,rsa加解密在本地正常,部署到tomcat上加解密后出现乱码。
myeclipse中tomcat部署编译jsp页面后,浏览器显示中文乱码
IIS 部署在 cassini 中正常工作后,PrincipalContext.ValidateCredentials 停止验证