`
文昌平蓝杰
  • 浏览: 55973 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

.net使用cookie产生乱码的问题

阅读更多

这个是我实际遇到的问题

 

在本地测试的时候是好好的,结果发布到iis上,读取出来的cookie成了乱码

 

一开始使用了一个非常傻的方式,就是把含有中文的cookie放到最后在存入,这个至少解决了一个问题,即不含有中文的cookie能够正常读取,可能是中文的乱码导致了cookie的字节读乱了

 

后来改进了,查找了网上的方法,也给你们粘贴上来,供大家参考

我看到的源地址,http://blog.csdn.net/mynewdays/article/details/16119161

为了防止这篇文章删掉,我给粘下来了。

下面是写入cookie的代码

[csharp] view plain copy
  1. HttpCookie cookie = new HttpCookie("username");  
  2.             cookie.Value = "张三,14,images/1.jpg";  
  3.             cookie.Expires = DateTime.Now.AddDays(1);  
  4.             Response.Cookies.Add(cookie);  


 

下面是读取cookie的代码

[csharp] view plain copy
  1. if (Request.Cookies["username"]!=null)  
  2.             {  
  3.                 string username = Request.Cookies["username"].Value;  
  4.                 Response.Write(username);  
  5.             }  


 

有时读取出来的cookie值中的中文部分可能是乱码,不管是有什么导致的,我们都可以通过编码进行解决

更改上面写入cookie的代码

[csharp] view plain copy
  1. HttpCookie cookie = new HttpCookie("username");  
  2.             cookie.Value = HttpUtility.UrlEncode("张三,14,images/1.jpg",Encoding.GetEncoding("UTF=8"));  
  3.             cookie.Expires = DateTime.Now.AddDays(1);  
  4.             Response.Cookies.Add(cookie);  


 

更改上面读取cookie的代码

[csharp] view plain copy
  1. if (Request.Cookies["username"]!=null)  
  2.            {  
  3.                string username =HttpUtility.UrlDecode(Request.Cookies["username"].Value,Encoding.GetEncoding("UTF-8"));  
  4.                Response.Write(username);  
  5.            }  

 

想这样,在存储和读取cookie的时候都使用utf8的方式,就不会再出现乱码了,不管是在服务器还是本地都行,试过了

分享到:
评论

相关推荐

    .NET中文乱码的解决方法分享.docx

    .NET中文乱码的解决方法分享 .NET中文乱码的解决方法是ASP.NET...同时,本文还提供了一些其他相关的解决方案,例如解决ASP.NET中的各种乱码问题、ASP.NET Core中的中文乱码问题、ASP.NET Cookie中的中文乱码问题等等。

    asp.net Cookie值中文乱码问题解决方法

    我们以asp.net为例,代码如下: 设置Cookie时: 代码如下: HttpCookie cookie = new HttpCookie(“name”, System.Web.HttpContext.Current.Server.UrlEncode(“软件开发网”)); Response.Cookies.Add(cookie);读取...

    解决Asp.net 读取cookie中保存的中文字符乱码问题

    cookie储存中文是会乱码的,在使用cookie储存中文的时候需要使用UrlEncode编码,同时读取cookie中的中文时需要使用功能UrlDecode解码。 正文 Cookie是保存在客户端硬盘或内存中的一小段文本信息,如网站、用户、会话...

    【ASP.NET编程知识】asp.net中的cookie使用介绍.docx

    本文将对 ASP.NET 中的 Cookie 使用进行介绍,包括 Cookie 的基本概念、操作、跨域设置、中文乱码问题解决方法等。 一、Cookie 的基本概念 Cookie 是一种小型文本文件,存储在客户端的浏览器中,由服务器生成并发...

    解决ASP.NET中的各种乱码问题总结

    总的来说,解决ASP.NET中的乱码问题,关键在于理解编码规则,确保文件编码与配置文件匹配,并使用适当的函数处理数据编码。对于AJAX请求,使用合适的工具和方法,如jQuery的 `$.ajax()` 和 `$.param()`,可以有效地...

    ASP.NET常见问题集锦.zip

    .net中中文乱码问题解决.txt ADO.NET 与 XML:双剑合壁,威力强大.doc ASP.NET HTTP 运行时.doc ASP.NET ViewState 初探.doc ASP.NET Web 方法中的 XmlElement 参数的功能.d ASP.NET 中 Cookie 的基本知识....

    在C#中可以使用CookieContainer 对象来保存登录后的Cookie信息

    - **编码问题**:在处理不同的编码格式(如gb2312与utf-8)时,需要注意编码转换的问题,以避免乱码出现。 - **安全性考虑**:对于敏感信息的传输,应该考虑使用HTTPS协议,以提高数据的安全性。 - **Cookie的生命...

    关于有些Asp.net项目发布后出现网址乱码的解决方法

    当我输入网站域名,打开网页后url中会跟一段“乱码” 代码如下:http://www.XXXX.com/(S(jnzpixfqi5rge5rnl45vdb45))/index.aspx 最后在查看web.config时看到了一句 ”InProc” stateConnectionString=”tcpip ...

    【ASP.NET编程知识】ASP.NET MVC页面重定向简单介绍.docx

    - 对于URL中包含非ASCII字符(如汉字)的情况,需要使用Server.UrlEncode对查询字符串进行编码,以避免乱码问题。 总的来说,理解这些方法的工作原理及其优缺点对于优化ASP.NET MVC应用程序的性能和用户体验至关...

    cookie和表单实现基本登录并保存信息

    JSP页面内容介绍 index.jsp ...需要导入java.net.*包使用URLEncoder对象 将用户名和密码保存在cookie中,并设置它们的最长生存期限 userCenter.jsp 遍历客户端的cookie,使用URLDecoder解码获取用户信息

    asp.net下cookies的丢失和中文乱码

    ### ASP.NET 下 Cookies 的丢失与中文乱码问题详解 #### 一、Cookies丢失的原因及解决方案 在ASP.NET应用中,可能会遇到Cookies丢失的情况。这通常不是由于代码本身的错误导致的,而是由多种因素共同作用的结果。 ...

    爬虫系列 一次采集.NET WebForm网站的坎坷历程.docx

    7. **编码问题**:在处理URL和表单数据时,必须正确编码,防止出现乱码问题。 8. **动态加载内容**:现代网页可能包含JavaScript动态加载的内容,这可能需要使用像Selenium这样的工具来模拟浏览器行为。 通过上述...

    ASP.NET 中实现页面间的参数传递

    - 当传递包含中文或特殊字符的参数时,可能会出现乱码或参数截断的问题。可以通过修改Web.config中的编码设置或使用`Server.UrlEncode`和`Server.UrlDecode`方法进行编码和解码来解决。 #### 2. Application **...

    ASP.NET Night Words

    3. 表单和控件章节探讨了HTML表单的提交方式、获取HTML控件的值、防止SQL注入攻击、解决乱码问题、服务器端表单和HTML服务器控件的使用等。这些内容对于构建安全且功能完备的Web表单至关重要。 4. Visual Studio ...

    safari cookie设置中文失败的解决方法

    本文将深入探讨“Safari Cookie设置中文失败”的问题及其解决方案。 Cookie是一种在客户端和服务器之间传递信息的技术,通常用于保存用户状态、会话管理等。然而,Safari浏览器在处理包含非ASCII字符(如中文)的...

    asp cookie中文Javascript取得中文cookie

    ASP.NET中的Cookie管理和JavaScript操作Cookie是Web开发中的基础技能,特别是在处理中文字符时,需要特别注意编码问题。本文将深入探讨如何在ASP.NET环境下创建包含中文的Cookie,并使用JavaScript进行读取。 首先...

    ASP.NET与ASP互通COOKIES的一点经验

    但与此同时,而用ASP开发的旧系统面则临被整合,这时,面临一个问题:ASP与ASP.NET互相整合时,其中文COOKIES信息无法被互通共享,当使用ASP.NET写入中文COOKIES信息后,使用ASP进行读取,读出来的却是乱码,而非...

    asp.net采集页面上所有图像图片资源的具体方法

    此外,值得注意的是,下载过程中可能会遇到各种网络问题,例如网页可能因为各种原因(如需要cookie、编码问题、网页设计的特殊结构等)导致无法正确下载。在这种情况下,需要具体问题具体分析,有时可能需要根据...

Global site tag (gtag.js) - Google Analytics