请求网页的过程(HTTP原理)
在浏览器中输入网址到获取页面之间发生了什么?
首先要明白网址是什么
URL
URL:Universal Resource Locator,统一资源定位符。举例来说:https://github.com/favicon.ico,它是一个URL。其中包含了访问协议https(后面内容)、访问路径(/即根目录)和资源名称favicon.ico。本质是一串身份证(数字代码),但用github.com(名字)来代替方便人类记忆。
类比现实即是我家在四川省,具体的资源名称就是具体的四川省成都市某地址,但实际上是3.1.9这样的代码,只是用人类更易记忆的形式代替。
浏览器中的网页是什么
HTML
浏览器中看到的网页就是超文本解析而成的,网页源代码是一系列HTML代码
。浏览器解析HTML代码后便形成了网页,而网页的源代码HTML成为超文本(Hypertext)。
查看方法——网页打开开发者模式:
Ⅰ.网页空白处右键选择“检查”
Ⅱ.Elements中即为网页源代码
具体发生了什么
HTTP和HTTPS
https://github.com中的URL开头会有http或https,这是访问资源需要的协议类型。就好比快递中,我们需要先基于某协议(如:包裹丢失怎么办,加急件之类的)达成共识,才能保证高效而准确地传送包裹。同理,HTTP协议是用于从网络传输超文本数据到本地浏览器的传送协议,保证高效而准确地传送超文本文档。
- HTTP协议是由万维网协会(World Wide Web Consortium)和Internet工作小组IETF(Internet Engineering Task Force)共同合作制定的规范。目前广泛使用的是HTTP 1.1版本。
HTTPS全称Hyper Text Transfer Protocol Over Secure Socket Layer,是以安全为目标的HTTP通道,简单来讲是HTTP的安全版。即HTTP下加入SSL层,简称HTTPS。
具体过程
简单的理解过程:在浏览器中输入URL,浏览器向网站所在的服务器发送一个请求,网站服务器接收到这个请求进行处理和解析,然后返回对应的响应传回给浏览器。响应里面包含了页面的源代码等内容,浏览器再进行解析通过网页呈现。
示例:
Ⅰ.打开开发者工具
Ⅱ.输入URL回车观察网络请求
Ⅲ.Network页面下出现一个个条目,其中一个条目代表一次发送请求和接收响应的过程
Ⅳ.观察第一个网络请求:www.baidu.com
Ⅴ.点击条目,看到详细信息。总体分为三类: