Atitit.request http乱码的设计防止 检测与解决最近实践p825 attilax总结.doc
Atitit.request http乱码的设计防止 检测与解决最近实践p825 attilax总结.doc
1 浏览器判断一个页面的编码有俩个途径, 一种是通过HTTP响应头, 一个是通过meta: 1
1 浏览器判断一个页面的编码有俩个途径, 一种是通过HTTP响应头, 一个是通过meta:
00001. HTTP/1.x 200 OK
00002. Date: Sat, 18 Oct 2008 21:53:51 GMT
00003. Server: Apache/2.0.52 (Red Hat)
00004. X-Powered-By: PHP/5.3.0alpha2
00005. Connection: close
00006. Transfer-Encoding: chunked
00007. Content-Type: text/html; charset=GB2312
注意最后一行, 这个是由HTTP头部指明的页面编码格式.
另外一种就是我们常见的, 也会另很多初学者困惑的meta:
作者:: 老哇的爪子 Attilax 艾龙, EMAIL:1466519819@qq.com
转载请注明来源: http://blog.csdn.net/attilax
00001. <head>
00002. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
00003. <title>风雪之隅 </title>
00004. </head>
00005.
问题就在于,没有一个统一的标准,来指明这俩中方式的优先级, 不同的浏览器有着不同的优先级策略.这也就是为什么,我们在FF下正常浏览的页面,在IE下会乱码的原因.
2 乱码的检测,,与自动回复
可以检测,列徐俩个问好??
if(value.contains("??"))
value=v_oriagal
3 同时设置字符编码以及http头的编码
response.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=UTF-8");
4 参考
response设置编码的三种方式 - 微尘的世界 - ITeye技术网站.html