URL 的第一部分是 URL 方案(scheme)方案告知 web 客户端怎样访问资源,例子中使用 HTTP 协议
URL 的第二部分指出服务器的位置,告知 WEB 客户端资源
URL 的第三部分是资源路径,说明了请求的是服务器上那个特定的本地资源
结构:方案://服务器位置/路径
eg:http://www.joes-hardware.xom/seasonal/index-fall.html
http:超文本传输协议方案,默认端口 80
基本格式:http://:/?#
https:端到端的加密机制,默认端口 443
基本格式:http://:/?#
ftp:文件传输协议
基本格式:ftp://:@:/;
File:指定主机上可以直接访问的文件
基本格式:file:///
telnet:访问交互式应用程序
基本格式:telnet://:@:
请求报文—包含命令和 URL
GET /test/hi-there.txt HTTP/1.1
Accept:text/*
Host:www.joes-hardware.com
响应报文
HTTP/1.0 200 OK
Content-type:text/plain
Content-length:19
Hi! i’m a message!
GET——从服务器获得一份文档
HEAD——只从服务器获取文档的首部
POST——向服务器发送需要处理的数据(包含主体)
PUT——将请求的主题部分存储在服务器上(包含主体)
TRACE——对可能经过代理服务器传送到服务 i 报文进行追踪
OPTIONS——决定可以在服务器上执行那些操作
DELETE——从服务器上删除一份文档
为了调试与服务端的网络通讯协议,常常需要截取网络封包来分析。Charles 通过将自己设置成系统的网络访问代理服务器,使得所有的网络访问请求都通过它来完成,从而实现了网络封包的截取和分析。
例如
从服务端获得一份文档,通过 Charles,可以做具体分析
request
response