一、HTTP请求过程
在浏览器中输入一个URL,回车之后便会在浏览器中看到页面内容。在这个过程中浏览器向网站所在的服务器发送了一个请求,网站服务器收到这个请求后进行处理,然后返回响应,传回给浏览器,响应里包含了页面的源代码等内容,浏览器再对其进行解析,然后将网页呈现出来。
此处的客户端代表我们自己的PC或手机浏览器,服务器即要访问的网站所在的服务器。
二、案例
1)打开浏览器,访问百度,右击并选择“检查”项打开浏览器的开发者工具,选择Network项,Network下方出现了一个个条目,其中一个条目就代表一次发送请求和接收响应的过程。
- 第一列Name:请求的名称,一般会将URL的最后一部分内容当作名称。
- 第二列Status:响应的状态码,通过状态码可以判断请求是否得到了正常的响应
- 第三列Type:请求资源的类型。
- 第四列Initiator:请求源。用来标记请求是由哪个对象或进程发起的。
- 第五列Size:从服务器下载的文件或请求的资源大小。如果是从缓存中取得的资源,则该列会显示memory cache。
- 第六列Time:发起请求到获取响应所用的总时间。
- 第七列Waterfall:网络请求的可视化瀑布流。
2)点击某条条目,可以看到更详细的信息。
在Headers项下有三部分:
- General部分:Request URL为请求的URL,Request Method为请求的方法,Status Code为响应状态码,Remote Address为远程服务器的IP地址和端口,Refereer Policy为Referrer判别策略。
- Response Headers部分:表示响应头。表示服务器的响应,其中包含了服务器的类型、文档类型、日期等信息。浏览器接收到响应后,会解析响应内容,进而呈现网页内容。
- Request Headers部分:表示请求头。请求头里带有许多请求信息,例如浏览器标识、Cookies、Host等信息。服务器会根据请求头内的信息判断请求是否合法,进而作出对应的响应。