web请求编码与解码

本文讨论了Web请求中的编码问题,包括UTF-8、UTF-16、ISO-8859-1、GBK编码的特点和适用场景。在URL编码中,浏览器可能使用不同的编码方式,导致乱码。对于GET和POST请求,浏览器和服务器的解码策略不同,Tomcat的配置会影响解码过程。解决乱码的终极方案是设置`useBodyEncodingForURI`为true,并确保请求和响应的字符集为UTF-8。
摘要由CSDN通过智能技术生成

编码字符集

  • UTF-16中英文2字节,java使用UTF-16,所以char占2字节,优点:编码效率高,适合在磁盘和内存中使用
  • UTF-8英文1字节中文3字节,在编码效率和编码安全性之间做了平衡,适合网络传输,是理想的中文编码方式
  • ISO-8859-1只能只能表示256个西欧字符,中文被编码为'?' 。
  • GBK英文1字节,中文2字节,GBK的范围比GB2312广,GBK兼容GB2312。

  • 不能使用ISO-8859-1对中文字符编码,中文字符经过 ISO-8859-1 编码会丢失信息


浏览器编码
  • 浏览器将URL中非ASC字符依照某种编码方式转为十六进制然后加上%
  • get请求编码
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值