cookies的丢失和中文乱码

2016-02-19 15:29 2 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);
  这样就解决了。

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

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

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

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

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

来源:https://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开发
当参数值为英文是可以正确写入数据库,但为中文是就不行,如何解决这个中文乱码的问题呢? 下面一步步教你如果解决php与ajax开发过程中,提交中文参数乱码的问题。 出现的原因是因为参数传递的格式问题. 因为英文在参数传递转换两边格式一样所以没问题. 而中文状态下的解析会出现构造组合问题.出现类似繁体的乱玛. 可以这样解决: ...
标签: Web开发
今天终于解决了AJAX的中文乱码问题,写篇文章来帮助一下有同样问题的朋友们。我的开发环境:XP, eclipse,使用GB18030编码。 当遇到这个问题时,到网上去查了好多文章,提到几种解决方案,如:全站UTF-8编码;请求头编码为中文;使用javascript中的escape函数。 使用GET方式提交数据的时候,中文问题很好解决,setrequestheader("Content-Type...
标签: 电脑入门
MAC用户在打开txt文档时,经常会出现txt中文乱码现象。这个问题该怎么解决呢?方法很简单,一起来看看吧。 解决方法: 1. 打开mac系统的TextEdit,然后在左上角那个菜单里面,选择 文本编辑--偏好设置。 2. 在偏好设置中选择第二个标签页(打开和存储),选择纯文本文件编码中的打开文件和存储文件修改成为中文(GB 18030),就可以啦...

经验教程

319

收藏

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