HttpFox

HttpFox是Firefox的插件,可以用于HTTP分析。

https://addons.mozilla.org/en-US/firefox/addon/httpfox/

  安装  

1. 打开Firefox浏览器

2. 点击浏览器右上角 "打开菜单"——"附加组件"

3. 搜索 "httpfox"——点击 "安装" 即可

4. 重启浏览器

  打开  

1. 打开Firefox浏览器

2. 点击浏览器右上角 "打开菜单"——右下角"定制"

3. 将HttpFox拖到导航栏

或快捷键:ctrl + shift + F2

   HTTP请求头(Request Header)  

一个HTTP请求报文由请求行(request line)、请求头部(header)、空行和请求数据4个部分组成

HTTP客户请求

    说明 实例
请求行    请求方法 请求网址 协议 GET / HTTP/1.1
消息头      

Host

 对应网址URL中的Web名称和端口号

Host www.baidu.com

User-Agent

 是客户浏览器名称

User-Agent Mozilla/5.0 (Windows NT 6.1; WOW64; rv:49.0) Gecko/20100101 Firefox/49.0

Accept

MIME文件格式

MIME (Multipurpose Internet Mail Extensions) 是描述消息内容类型的因特网标准

MIME 消息能包含文本、图像、音频、视频以及其他应用程序专用的数据

Accept text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Charset
浏览器可以接受的字符编码  
Accept-Language
指出浏览器可以接受的语言种类 Accept-Language zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding

指出浏览器可以接受的编码方式

编码方式不同于文件格式,它是为了压缩文件并加速文件传递速度。

浏览器在接收到Web响应之后先解码,然后再检查文件格式

Accept-Encoding gzip,deflate,br
Cookie 浏览器用这个属性向服务器发送Cookie

Cookie是在浏览器中寄存的小型数据体,

它可以记载和服务器相关的用户信息,也可以用来实现会话功能

Cookie
Connection  告诉服务器是否可以维持固定的HTTP连接

HTTP/1.1使用Keep-Alive为默认值,当浏览器需要多个文件时

(比如一个HTML文件和相关的图形文件),不需要每次都建立连接

 
请求数据  

 附加在请求后的文本或二进制文件,只有请求方式为post时,

实体才会有数据(请求参数)

 

   HTTP响应头(Response Header)  

HTTP响应由三个部分组成,分别是:状态行、消息报头、响应正文。

服务器响应头     说明 实例
状态行

服务器HTTP协议的版本 响应状态代码 状态代码的文本描述 HTTP/1.1 200 OK
消息报头 server 服务器应用程序软件的名称和版本 bfe/1.0.8.18
Date 原始服务器消息发出的时间 Thu, 08 Dec 2016 09:34:40 GMT
Content-Type 返回内容的MIME类型 text/html
Content-Length 响应体的长度 0
Accept-Ranges 表明服务器是否支持指定范围请求及哪种类型的分段请求 bytes
Cache-Control 告诉所有的缓存机制是否可以缓存及哪种类型 private, max-age=0, no-cache
ETag 请求变量的实体标签的当前值 "4280832337"
Expires 响应过期的日期和时间 Thu, 08 Dec 2016 09:34:40 GMT
Last-Modified 请求资源的最后修改时间 Fri, 23 Oct 2009 08:06:04 GMT
Pragma 包括实现特定的指令,它可应用到响应链上的任何接收方 no-cache
Transfer-Encoding 文件传输编码 chunked
Set-Cookie 设置cookie值  
响应正文      

  响应状态代码  

状态码 说明 常用
1XX 指示信息--表示请求已接收,继续处理  
2XX 成功--表示请求已被成功接收、理解、接受 200 OK:客户端请求成功
3XX 重定向--要完成请求必须进行更进一步的操作。  
4XX 客户端错误--请求有语法错误或请求无法实现。 400 Bad Request:客户端请求有语法错误,不能被服务器所理解。
401 Unauthorized:请求未经授权,这个状态代码必须和WWW-Authenticate报头域一起使用。
403 Forbidden:服务器收到请求,但是拒绝提供服务。
404 Not Found:请求资源不存在,例:输入了错误的URL。
5XX 服务器端错误--服务器未能实现合法的请求 500 Internal Server Error:服务器发生不可预期的错误。
503 Server Unavailable:服务器当前不能处理客户端的请求,一段时间后可能恢复正常,举个例子:HTTP/1.1 200 OK(CRLF)。

  参考文章  

[1] HTTP Header 详解 

[2] request请求数据包组成:请求行(request line)消息头(header)实体内容(Body) 

[3] HTTP请求报文和HTTP响应报文

posted @ 2016-12-09 11:00  huapyuan  阅读(1221)  评论(0编辑  收藏  举报