奇怪网页乱码问题的跟踪处理

本文针对IE浏览器在特定设置下出现的日文乱码问题进行了详细分析。问题出现在选择了“自动选择编码”选项后,通过使用Fiddler2工具进行HTTP交互截取与修改验证,最终在服务端对HTTP header部分添加charset设置解决了该问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

奇怪网页乱码问题的跟踪处理

问题描述:

  1. 网页中包含日文,所以存储时选择的编码是”utf -8”
  2. 网页的head 标签中的meta中设置的charset”utf -8”
  3. IE浏览时如果没有选择“自动选择编码”时,IE可以正常用”utf -8” 编码显示页面,如下图
  4. IE浏览时如果选择自动选择编码时,IE不可以正常用”utf -8” 编码显示页面,日文会显示成乱码,当前客户端的localeUSIE自动选用的编码为”Western European(Windows)”, 若当前客户端的localeChina,IE自动选用的编码为”Chinese Simplified(GB2312)”.
     
  5. 页面为乱码时,点击刷新按纽后页面显示正常。

 

问题定位与确认:

 

  1. 经网上搜索相关资料,了解到决定网页编码的方式有主要有两个,一个是网页在head标签中的meta中设置的charset,二是HTTP协议header部分对ContentType的设置。不设置IE”自动选择编码时,IE可以正确地使用utf-8编码显示页面,说明网页中head设置生效,可以排除一。对于问题二用Fiddler2工具截取Http协议的交互过程,发现HTTP协议的Responseheader中的设置确实不包含charset的设置,如下图
  2. fiddler2工具设置断点, 截取HTTP协议的Response,并修改相应的ContentType, 最后发送到浏览器进程,以确认是不是由HTTP 协议Header部门引起的问题。如下图: 然后”Save”,然后”Run To Completion”,然后察看IE,结果如下:

 

问题解决:

在程序服务端对HTTPheader部分加上charset的设置,OK

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值