Http请求头和相应头分析
Posted 纳木错星空
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Http请求头和相应头分析相关的知识,希望对你有一定的参考价值。
《海棠》 苏轼
东风袅袅泛崇光,香雾空蒙月转廊;
只恐夜深花睡去,故烧高烛照红妆。
1.Http请求头:
1.1Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
意思:浏览器支持的请求 MIME 类型分别是 text/html、application/xhtml+xml、application/xml 和 */*,优先顺序是它们从左到右的排列顺序
详解:
Accept表示浏览器支持的 MIME 类型;
MIME的英文全称是 Multipurpose Internet Mail Extensions(多功能 Internet 邮件扩充服务),它是一种多用途网际邮件扩充协议,在1992年最早应用于电子邮件系统,但后来也应用到浏览器。
text/html,application/xhtml+xml,application/xml 都是 MIME 类型,也可以称为媒体类型和内容类型,斜杠前面的是 type(类型),斜杠后面的是 subtype(子类型);type 指定大的范围,subtype 是 type 中范围更明确的类型,即大类中的小类。
Text:用于标准化地表示的文本信息,文本消息可以是多种字符集和或者多种格式的;
text/html :表示 html 文档;
Application:用于传输应用程序数据或者二进制数据;
application/xhtml+xml :表示 xhtml 文档;
application/xml:表示 xml 文档。
1.2 Accept-Encoding:gzip, deflate
意思:浏览器支持的压缩编码是 gzip 和 deflate。
详解:
Accept-Encoding表示浏览器有能力解码的编码类型;
gzip是 GNU zip 的缩写,它是一个 GNU 自由软件的文件压缩程序,也经常用来表示 gzip 这种文件格式。
deflate是同时使用了 LZ77 算法与哈夫曼编码(Huffman Coding)的一个无损数据压缩算法。
1.3 Accept-Language:zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3
意思:浏览器支持的语言分别是中文和简体中文,优先支持简体中文。
1.4 Connection:keep-alive;
Connection表示客户端与服务连接类型;
Keep-Alive表示持久连接;
如果Servlet看到这里的值为“Keep - Alive”,或者看到请求使用的是HTTP 1.1(HTTP 1.1默认进行持久连接),它就可以利用持久连接的优点,当页面包含多个元素时(例如Applet,图片),显著地减少下载所需要的时间。要实现这一点,Servlet需要在应答中发送一个Content - Length头,最简单的实现方法是:先把内容写入ByteArrayOutputStream,然后在正式写出内容之前计算它的大小。
1.5 Cookie:JSESSIONID=2B5F5F6380CA6339CEF98AD9A9E95AB4
缓存的sessionID和浏览器中的缓存,没有缓存是无法实现session相关功能的。
1.6 Host:localhost:8080
Host表示请求的服务器网址;
1.7 User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:55.0) Gecko/20100101 Firefox/55.0
意思:使用的用户代理是 Mozilla/5.0 (compatible; 域名)。
1.8 Pragma
指定“no - cache”值表示服务器必须返回一个刷新后的文档,即使它是代理服务器而且已经有了页面的本地拷贝,常用来禁止缓存。
2. Http响应头
2.1 Content-Language:zh-CN
响应的语言类型,中文简体
2.2 Content-Length:317
响应的内容的长度
2.3 Content-Type:text/html;charset=UTF-8
响应具体MIME类型
2.4 Date:Thu, 07 Sep 2017 14:34:35
响应时间
2.5 GMTServer:Apache-Coyote/1.1
响应的服务器类型
2.6 HTTP/1.1 200 OK
响应的状态码
详解:
在本例中,状态行给出的HTTP状态代码是200,以及消息OK。状态行始终包含的是状态码和相应的简短消息,以避免混乱。最常用的状态码有:
◆200 (OK): 找到了该资源,并且一切正常。
◆304 (NOT MODIFIED): 该资源在上次请求之后没有任何修改。这通常用于浏览器的缓存机制。
◆401 (UNAUTHORIZED): 客户端无权访问该资源。这通常会使得浏览器要求用户输入用户名和密码,以登录到服务器。
◆403 (FORBIDDEN): 客户端未能获得授权。这通常是在401之后输入了不正确的用户名或密码。
◆404 (NOT FOUND): 在指定的位置不存在所申请的资源。
◆500:服务器异常。
以上是关于Http请求头和相应头分析的主要内容,如果未能解决你的问题,请参考以下文章