最近翻阅《深入分析 Java Web 技术内幕》(作者:许令波),关于Tomcat上Web请求的编解码问题,少了一个小点,可能影响了部分读者的理解,我特意查证了一下,特总结如下:

1. 请求的PathInfo部分用Tomcat的Connector元素的URIEncoding属性指定的编码来解码。

具体使用可参考:https://tomcat.apache.org/tomcat-8.5-doc/config/http.html。

2. 第二先说请求体(POST正文)的解析,Tomcat按下次顺序去获取字符编码:

1)用户通过类似代码指定:<%request.setCharsetEncoding("utf-8")%>

2) 请求报文content-type请求头指定的编码。

3)应用web.xml配置的统一编码(这个目前在Servlet4.0规范中)

4) 系统默认的ISO8859-1

3. 另外就是QueryString部分的解析,默认情况下Tomcat采用与1)相同的URIEncoding来解析QueryString。 但同时Tomcat提供了另一个参数useBodyEncodingForURI。字面意思用报文体编码来解析QueryString。  若该参数为true.则Tomcat采用与2)相同的编码来解析QueryString。

关于Tomcat上请求的编解码问题相关推荐

  1. 一次HTTP请求的编解码。

    URL的编解码 注意:这里所说的URL和URI是针对Servlet进行描述的,也就是request.getRequestURL()和request.getRequestURL()返回的URL和URI结 ...

  2. FFmpeg在Windows上通过dshow编解码方式设置为mjpeg并实时显示测试代码

    Windows上默认的内置摄像头一般支持两种编解码格式:rawvideo和mjpeg.在调用FFmpeg接口时默认的采用rawvideo.这里通过DirectShow实现为mjpeg进行编解码. 通过 ...

  3. 【FFmpeg在Intel GPU上的硬件编解码实现】

    用于记录Intel CPU开发qsv硬件解码过程中遇到的一些问题及解决方案 以下文章是在开发过程中参考的比较有意义的文章,供大家学习和参考~~ https://zhuanlan.zhihu.com/p ...

  4. rk3399 rkmpp 在ffmpeg上实现硬编解码

    一.编译指令: --enable-cross-compile --cross-prefix=/home/cks/fireFlyLinuxSdk/firefly/linux_sdk/buildroot/ ...

  5. SpringBoot中的序列化和反序列化器,如何成为史上最强“编解码大师”?

  6. java下发命令nbiot,NB物联网之天翼物联(3)——编解码插件上传规则细解(java开发物联网)...

    前言 电信的编解码插件本意上是可以让我们的开发更加灵活,但是你好歹把文档写明白啊...同时在正常的生产中我们的产品不可能只使用电信的模块,有时甚至是客户要求使用移动还是电信的模块,所以兼容性给我们的体 ...

  7. 04 ARM Mali-V VPU硬件视频编解码驱动介绍V61

    ARM Mali-V VPU硬件视频编解码驱动介绍V61 作者 将狼才鲸 创建日期 2022-12-13 CSDN文章地址:ARM Mali-V VPU硬件视频编解码驱动介绍V61 一.PC上的VPU ...

  8. NB物联网之天翼物联(3)——初窥编解码插件(java开发物联网)

    前言 电信的编解码插件本意上是可以让我们的开发更加灵活,但是你好歹把文档写明白啊...同时在正常的生产中我们的产品不可能只使用电信的模块,有时甚至是客户要求使用移动还是电信的模块,所以兼容性给我们的体 ...

  9. Android音频开发(六)音频编解码之初识MediaCodec上

    前五篇我们介绍了关于音频的基础知识,今天来讲述一下音频的重点和难点部分,这一节依然是分上下俩个节点,深入讲述Android音频开发的编解码技术. 1.MediaCodec 介绍 MediaCodeC是 ...

最新文章

  1. Hadoop集群的基本操作(二:HBase的基本操作)
  2. 数据挖掘导论读书笔记10聚类分析续
  3. List扩展方法出错,this关键词出错,解决方案
  4. 流行病学与生物统计学: 临床研究导论 Epidemiology and Biostatistics: An Introduction to Clinical Research
  5. node+express项目链接MySQL数据库(最简单版)
  6. Myeclipse----Hibernate环境搭建
  7. python怎么把图片变成字符_用Python把图片变成字符画
  8. android音乐播放器开发思路,手把手教你做音乐播放器(一)功能规划
  9. STAP旁瓣干扰抑制与干扰对抗仿真
  10. 新媒体文章标题怎么写?
  11. matlab get(gcf,'postion ')相关解释
  12. 谢谢版主整理的好材料,,妈妈再也不用担心的我的unity
  13. 最新CleanMyMac X4.12.1中文版Mac系统优化清理工具
  14. 【创业者活动】运营弱关系型社区以及创业者交流聚会[2012年12月]
  15. Mac在线看视频卡顿
  16. 华硕天选4和联想拯救者r9000p选哪个好
  17. Dubbo2.6.5入门——简单的HelloWorld
  18. 日语基础复习 Day 13
  19. ACL2023征稿通知与投稿流程注意事项
  20. CART树算法解析加举例

热门文章

  1. Android资源文件 - 使用资源存储字符串 颜色 尺寸 整型 布尔值 数组
  2. mySQL优化 my.ini 配置说明
  3. 总结ISO各层协议都有哪些
  4. 使用ListView应该注意的地方 很全
  5. 【记录一个问题】cuda核函数可能存在栈溢出,导致main()函数退出后程序卡死30秒CUDA...
  6. 如何在Debian 8/7上安装PostgreSQL 9.6
  7. html 中表单元素input type=hidden的作用
  8. js数组中的splice()方法
  9. 解决403跨域问题之——————JSONP
  10. 二叉树的层序遍历和二叉树的线索化