cookies的丢失和中文乱码

2016-02-19 15:29 5 1 收藏

想不想get新技能酷炫一下,今天图老师小编就跟大家分享个简单的cookies的丢失和中文乱码教程,一起来看看吧!超容易上手~

【 tulaoshi.com - Web开发 】

  我在文件系统下开发出来的程序,配置到iis下,cookies出来了些问题。

  1,cookies的丢失
  我在前几天的随笔《十分棘手的问题,使用vs2005在文件系统机制下开发出来的web程序,配置到iis就不能正常运行?》中记录了我解决丢失存储超级管理员权限的cookies的问题,虽然问题最后解决了,但我没有搞明白原因。随笔最后我给出了一个在文件系统下正常,在iis下不正常的牵强理由:文件系统在每次调试时提供了一个微型服务器,每次都是重新分配内存。而在iis下第一次运行是分配内存,只要程序不做改动,不用重新编译,就不再重新分配内存了。今天又看到《在ASP.NET中使用Session常见问题集锦 》这里提到:可能和机器的环境有关系,比如:防火墙或者杀毒软件等,尝试关闭防火墙(丢失Session的原因应该跟丢失cookies的原因一样)。觉得他讲的也有道理,在文件系统下运行应该不通过防火墙,在iis下运行就要通过防火墙了。看来这个问题不止我一人遇到过。我在以前使用asp.net1.1的时候到没遇到过丢失cookies或session的情况。

  2,cookies的中文乱码
  我昨天晚上突然又发现,iis下cookies里的中文又出现问题了,显示乱码。
  费了好一段时间,才解决:
  //写入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);
  这样就解决了。

  提醒正在使用vs2005文件系统开发项目的朋友注意一下。

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

  造成文件系统与iis运行有差别的原因应该跟他们的运行机制有关,希望找一些介绍他们运行机制的资料来看!

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

  http://enuosky.cnblogs.com/archive/2006/06/14/425762.html

来源:http://www.tulaoshi.com/n/20160219/1609729.html

延伸阅读
如果是windows系统,那么系统默认的本地字符集是gb2312,为了让数据表也使用gb2312字符集,我们要这样编写创建数据表的SQL语句: 代码如下: CREATE TABLE TEST {  ...  ...  ... }default character set gb2312; 然后在hibernate.cfg.xml中加上: 代码如下: property name="connection.characterEncoding"gb2312/property ...
标签: Web开发
因AJAX接受数据时服务器默认是采用UTF-8的编码形式进行传送,所以在很多GB2312中文网页中应用AJAX回传数据经常会发生中文乱码。 解决AJAX中文回传乱码,其实就是将在服务器端文件加一个HEADER,指明送出的是什么编码流。比如 ASP文档就是在头部增加一行说明: Response.Charset("GB2312") PHP的示例如下: header('Content-T...
标签: Web开发
在用ajax传递参数时,一般就是js向程序页面传递和程序向js文件传递两种情况,当出现中文汉字时,会出现乱码。 因为存在上述两种情况,所以解决起来也要分开对待。 这里是php系统中遇到的问题,所以以php为实例来解决ajax传递中文的问题。 1.Ajax向程序页面里传递中文汉字时出现乱码的情况:  Ajax中先用encodeURIComponent对要提交的...
标签: Web开发
AJAX中文问题分为两大类: 1)发送路径中的参数有中文,在服务器段接收参数值是乱码 例如: var url="a.jsp?name=小李"; xmlHTTP.open ("post",url,true); 解决办法: 利用javascript的提供的escape()或encodeURI()方法 例如: 客户端: var url="a.jsp?name=小李"; url=encodeURI(url); url=en...
标签: Web开发
当参数值为英文是可以正确写入数据库,但为中文是就不行,如何解决这个中文乱码的问题呢? 下面一步步教你如果解决php与ajax开发过程中,提交中文参数乱码的问题。 出现的原因是因为参数传递的格式问题. 因为英文在参数传递转换两边格式一样所以没问题. 而中文状态下的解析会出现构造组合问题.出现类似繁体的乱玛. 可以这样解决: ...

经验教程

384

收藏

49
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部