客户端通过http访问服务器端乱码问题的解决方案
2015-10-12 18:46
555 查看
问题场景:
客户端默认的字符编码方式是utf-8。服务端默认的编码方式是gbk,而且使用了过滤器设置了request.setCharacterEncoding("gbk")。问题来了,当客户端请求服务器端是,服务器端本来接收到数据并没有产生乱码现象,但是通过request.setCharacterEncoding("gbk")之后,接收到的数据变成乱码了。
最开始想到的解决办法是,把接收到的数据重新组装成utf-8的格式。String recevie = new String( reqcontent.getBytes("gbk"),"utf-8")。后来发现这种方式并不能全部把原来的中文复原,因此此路不通。
后来想到,实用URLEncode把所要发送的数据编码,服务器接收后,用URLDecode以相同的编码解码。这样不管两边的字符编码是否一致,传递的数据不再出现乱码的情况了。
客户端默认的字符编码方式是utf-8。服务端默认的编码方式是gbk,而且使用了过滤器设置了request.setCharacterEncoding("gbk")。问题来了,当客户端请求服务器端是,服务器端本来接收到数据并没有产生乱码现象,但是通过request.setCharacterEncoding("gbk")之后,接收到的数据变成乱码了。
最开始想到的解决办法是,把接收到的数据重新组装成utf-8的格式。String recevie = new String( reqcontent.getBytes("gbk"),"utf-8")。后来发现这种方式并不能全部把原来的中文复原,因此此路不通。
后来想到,实用URLEncode把所要发送的数据编码,服务器接收后,用URLDecode以相同的编码解码。这样不管两边的字符编码是否一致,传递的数据不再出现乱码的情况了。
相关文章推荐
- 小心服务器内存居高不下的元凶--WebAPI服务
- 运维入门
- Linux5.9无人值守安装
- 数据中心和云未来的十二大趋势
- 用vsftp快速搭建ftp服务器
- Linux快速构建apache web服务器
- 服务器监控策略浅谈
- 如何降低服务器采购成本 原理分析
- 建议的服务器分区办法
- 服务器托管六大优势分析
- Erlang实现的一个Web服务器代码实例
- 服务器技术全面解析
- 保护DNS服务器的几点方法小结
- 我国成为全球第二大服务器消费国
- Orace查询数据出现乱码的问题解决思路
- oracle em 按钮乱码解决办法及em网页变成英文
- 服务器 安全检查要点[星外提供]
- C#读取中文文件出现乱码的解决方法
- 服务器应用自动重新启动IIS批处理[原创]_DOS/BAT_脚本之家