response中setContentType、setCharacterEncoding和setHeader方法的解释
setContentType
response.setContentType(MIME)的作用是使客户端浏览器,区分不同种类的数据,并根据不同的MIME调用浏览器内不同的程序嵌入模块来处理相应的数据。
在tomcat安装路径中(/conf/web.xml),我们就能看到大量的MIME类型,感兴趣或者有需要可以自行查看。
下面是该Java中对该方法的描述:
设置正在发送给客户的响应的内容类型,如果响应还没有被提交。给定的内容类型可能包括一个字符编码规范,例如,text/html;charset=UTF-8。只有在getWriter被调用之前调用此方法,响应的字符编码才会从给定的内容类型中设置。
这个方法可以被反复调用以改变内容类型和字符编码。如果在响应被提交后调用此方法,则没有效果。如果在getWriter被调用后或响应被提交后调用该方法,它不会设置响应的字符编码。
容器必须将内容类型和用于servlet响应的写入者的字符编码传达给客户端,如果协议提供了这样的方法。在HTTP的情况下,会使用Content-Type头。
setCharacterEncoding
该方法主要是设置响应数据的字符编码方式的,一般设置为utf-8
下面是该Java中对该方法的描述:
设置被发送到客户端的响应的字符编码(MIME字符集),例如,UTF-8。如果字符编码已经被容器默认值、ServletContext默认值、setContentType或setLocale设置了,这个方法会覆盖它。用text/html字符串调用setContentType,用UTF-8字符串调用此方法,相当于用text/html; charset=UTF-8字符串调用setContentType。
这个方法可以被反复调用,以改变字符编码。如果在getWriter被调用后或响应被提交后调用此方法,则没有效果。
如果协议提供了一种方法,容器必须将用于servlet响应的写入器的字符编码传达给客户端。在HTTP的情况下,字符编码是作为文本媒体类型的Content-Type头的一部分进行交流的。请注意,如果servlet没有指定内容类型,那么字符编码就不能通过HTTP头传达;但是,它仍然被用来对通过servlet响应的写入器写入的文本进行编码。
setHeader
setHeader详解
该方法主要是修改响应头的内容的,常常用来对下载的文件进行处理,比如设定以附件进行下载并指定文件名就会使用response.setHeader(“Content-Disposition”,“attachment;filename=” + “XXXX”); 如果文件名为中文的话最好提前使用URLEncoder.encode进行提前UTF-8编码
下面是该Java中对该方法的描述:
用给定的名称和值设置一个响应头。如果头信息已经被设置了,新的值会覆盖之前的值。containsHeader方法可以用来在设置头的值之前测试头是否存在。
Params:
name - 标头的名称
value - 标头的值 如果它包含八位数的字符串,应该根据RFC 2047进行编码(http://www.ietf.org/rfc/rfc2047.txt)
response中setContentType、setCharacterEncoding和setHeader方法的解释相关推荐
- request 和response 中的setCharacterEncoding区别
response和request的setCharacterEncoding 一.request.setCharacterEncoding():是设置从request中取得的值或从数据库中取出的值. 指 ...
- php 禁用 chunked,php下HTTP Response中的Chunked编码实现方法
进行Chunked编码传输的HTTP Response会在消息头部设置: Transfer-Encoding: chunked 表示Content Body将用Chunked编码传输内容. Chunk ...
- linux man命令的1和1p,Linux中man命令的使用方法再解释
Linux提供了丰富的帮助手册,当你需要查看某个命令的参数时不必到处上网查找,只要man一下即可. 同时也可以使用man man 查看man的使用方法. 1.man共有以下几个章节 2.man手册的格 ...
- jQuery中slideToggle()的详细使用方法和解释
$(selector).slideToggle(speed,callback) 参数 speed和callback Speed 可选.规定元素从隐藏到显示的速度,默认'normal'可能 ...
- html中text函数,Excel中text函数的使用方法
说到Excel,相信大家都再熟悉不过了,但说到Excel中text函数的使用方法,可能很多人都不太熟悉,下面随学习啦小编一起看看吧. Excel中text函数的使用方法 首先解释一下text函数的基本 ...
- Scanner中nextLine()方法和next()方法的区别
我们在使用扫描器Scanner时,遇到了字符串肯定会使用API中定义好的next()和nextLine()方法.两者一个是能读取空格一个是不能读取空格就像下面的样子 当我们把二者交换位置,再来看一下效 ...
- Response的setContentType(encoding)、setCharacterEncoding(encoding)的区别,乱码的其他解决方案,MIMA(与Http请求)
response.setContentType(encoding);与response.setCharacterEncoding(encoding);有什么不同呀,为什么response对象里有两个处 ...
- response 中OutputStream和PrintWriter区别
https://blog.csdn.net/feipeng8848/article/details/56286399 https://blog.csdn.net/lhanson/article/det ...
- html中post语句,html中post乱码的解决方法
html中post乱码的解决方法 发布时间:2021-05-27 11:29:00 来源:亿速云 阅读:91 作者:小新 这篇文章主要介绍html中post乱码的解决方法,文中介绍的非常详细,具有一定 ...
最新文章
- 北京大学吴华君课题组多组学数据分析方向博士后和技术员招聘启示
- 我目前要学习的vue知识点
- kvm虚拟化学习笔记(十)之kvm虚拟机快照备份
- laravel中Blade模板继承
- css背景图充满整个屏幕
- linux虚拟机上挂载U盘
- DH参数标定原理推导
- gl常用库函数,glu常用库函数 简介
- MC开服教程2:材质包法自定义唱片音乐
- 做一个心无杂念的平凡人
- “修真院”修行九九八十一难(1)
- 巴比特 | 元宇宙每日必读:广州南沙发布“元宇宙九条”措施,平台最高可获得2亿元资金支持...
- MacOS git配置本地ssh
- 复现Transformer架构主干网络过程中的心路历程和个人感悟
- 网络面试题:字节序?网络字节序和主机字节序?
- IEEE 2017 STAM16 阅读笔记
- 深圳市让全民真正做到:主动检测,知艾防艾,共享健康。
- RAID磁盘阵列数据恢复指南
- imx6上搭建xenomai
- Python深度学习之循环神经网络的高级用法