Http响应乱码
2024-09-25 08:52:33
Http响应乱码
方案1
response.setHeader("Content-Type", "application/json");
response.setCharacterEncoding("GBK");
//Content-Type: application/json;charset=GBK
//{code: "401", message: "未登录"}
方案2
response.setHeader("Content-Type", "application/json;charset=UTF-8");
//{code: "401", message: "未登录"}
//Content-Type: application/json;charset=UTF-8
注意
只设置Content-Type不带编码信息无效
/*
只设置Content-Type,没有带编码信息,String中的中文是UTF16编码的。tomcat以其默认的ISO-8859-1从String中获取字节。tomcat附加在Content-Type的编码是charset=ISO-8859-1,浏览器会以这个编码解码,但是得不到原始中文信息。
*/
response.setHeader("Content-Type", "application/json");
//{code: "401", message: "???"}
//Content-Type: application/json;charset=ISO-8859-1
只设置response.setCharacterEncoding("GBK"),知识tomcat以GBK编码从String对象中获取字节。但是此时没有Content-Type信息。也就是浏览器将会用默认的类型和编码解析响应。不一致也会出现乱码。
//tomcat将字符串按GBK编码转为字节,但是浏览器收到字节后,按照默认编码解析将会乱码。
response.setCharacterEncoding("GBK");
//{"code":"401","message":"δ��¼"}
最新文章
- apache 虚拟机配置
- [Java面试十二]数据库概念相关
- django views中提示cannot convert dictionary update sequence element #0 to a sequence错误
- MVC – 3.EF(Entity Framework)
- Turing Test
- java中用中国网建提供的SMS短信平台发送短信
- javaEE学习笔记-利用DOM4J解析xml至数据库
- [Tommas] 测试用例覆盖率(二)
- SQL Server2008数据库自动备份步骤
- 【POI2003/2004 stage I】
- 如何配置visual studio 2013进行负载测试-万事开头难
- Android-----js和android的互调
- python全栈开发day117-MongoDB,pymongo
- git上传
- Netty实战六之ChannelHandler和ChannelPipeline
- 数字图像处理的Matlab实现(3)—灰度变换与空间滤波
- Ubuntu命令行快捷启动Matlab
- htm5-websocket实现数据查询应用
- 使用idea搭建SSM框架
- 给父元素与子元素分别设置visibility注意点
热门文章
- Day5- Python基础5 模块导入、time、datetime、random、os、sys、hashlib、json&;pickle
- vmware workstations 虚拟机安装CentOS
- Java Web 学习(6) —— Spring MVC 之校验器
- bzoj3293 分金币
- 【洛谷5072】[Ynoi2015] 盼君勿忘(莫队)
- 请不要嘲笑你身边那些投了P2P的朋友
- H5生成二维码
- jQuery 源码分析(十三) 数据操作模块 DOM属性 详解
- Django多进程滚动日志的问题
- java基础(23):字节流、字符流