Servlet's characters of get and post
2024-09-08 19:42:53
Tomcat默认是使用ISO8859-1来解码的,ISO8859-1是不支持中文的。
1、post请求解决乱码原因:
服务器不知道按哪种编码来处理HTML等文件来响应给浏览器的,所以处理post请求时,归根结底就是要处理response给浏览器的编码模式
切记:处理编码的代码段,一定要放置在获取写出流之前,在第一次使用response之前 即
放置在response.getWrite()之前。
三种格式如下:
1.1 response.setContentType("text/html;charset=utf-8");
1.2 response.setContentType("text/html");
response.setCharacterEncoding("utf-8");
1.3 response.addHeader("ContentType","text/html;charset=utf-8");
2、get请求解决乱码原因:
浏览器在提交请求时,域名后的参数已经进行tomcat自带的ISO8859-1编码来进行编码了,所以要在服务器接收请求之前就告知服务器如何编码
即在tomcat服务器下的server.xml下修改参数:
<Connector URIEncoding="UTF-8" connectionTimeout="20000" port="8080"protocol="HTTP/1.1" redirectPort="8443"/>
3、其余乱码原因:
其余的项目乱码问题,基本都是因为设置ide、project或者page时,没有进行设置编码格式,导致编码与解码出现偏差!
最新文章
- 理解Docker(3):Docker 使用 Linux namespace 隔离容器的运行环境
- Selenium调用Chrome,Firefox,IE
- java多线程学习-ThreadLocal
- C#基础系列:实现自己的ORM(反射以及Attribute在ORM中的应用)
- zoj 1842 Prime Distance
- cmd dos 下 无法显示中文
- 转Delphi中Memo显示行号列号
- 变量 || 基本数据类型 || if、while语句
- sleep()方法和wait()方法之间有什么差异?
- qsc oj 22 哗啦啦村的刁难(3)(随机数,神题)
- Jmeter3.1 使用技巧
- IOS中DES与MD5加密方案
- yii学习笔记--使用gii快速创建控制器和模型
- C++中构造函数的初始化列表(const、引用&;变量初始化)
- Mysql集群原理
- RABBITMQ too many heartbeats missed
- 【强化学习】python 实现 q-learning 例一
- BUPT2017 wintertraining(15) #2 题解
- C# 对图片加水印
- python的代码缩进和冒号
热门文章
- 微信公众号 H5授权登录
- unity默认管线lightmap
- springcloud报springboot jar包不存在
- Adversarial seeded sequence growing for weakly-supervised temporal action localization概述
- 2020ICPC沈阳I - Rise of Shadows
- [AGC013B] Hamiltonish Path
- js时间转化为几天前,几小时前,几分钟前
- cheerio中文文档
- 使用vite创建vue3+ts项目完整流程
- [2004年NOIP提高组] 合并果子