HTTP和HTTPS
HTTP协议(HyperText Transfer Protocol,超文本传输协议):是一种发布和接收 HTML页面的方法。
HTTPS(Hypertext Transfer Protocol over Secure Socket Layer)简单讲是HTTP的安全版,在HTTP下加入SSL层。
SSL(Secure Sockets Layer 安全套接层)主要用于Web的安全传输协议,在传输层对网络连接进行加密,保障在Internet上数据传输的安全。
HTTP的端口号为80,HTTPS的端口号为443
HTTP的请求与响应
HTTP通信由两部分组成: 客户端请求消息 与 服务器响应消息
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OGVTB73r-1590173902512)(../images/02_http_pro.jpg)]](https://i-blog.csdnimg.cn/blog_migrate/d5aa33b6b7f62076e696ddcadcb52d5c.png)
浏览器发送HTTP请求的过程:
-
当用户在浏览器的地址栏中输入一个URL并按回车键之后,浏览器会向HTTP服务器发送HTTP请求。HTTP请求主要分为“Get”和“Post”两种方法。
-
当我们在浏览器输入URL http://www.baidu.com 的时候,浏览器发送一个Request请求去获取 http://www.baidu.com 的html文件,服务器把Response文件对象发送回给浏览器。
-
浏览器分析Response中的 HTML,发现其中引用了很多其他文件,比如Images文件,CSS文件,JS文件。 浏览器会自动再次发送Request去获取图片,CSS文件,或者JS文件。
-
当所有的文件都下载成功后,网页会根据HTML语法结构,完整的显示出来了。
URL(Uniform / Universal Resource Locator的缩写):统一资源定位符,是用于完整地描述Internet上网页和其他资源的地址的一种标识方法。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KP3QPnjk-1590173902516)(../images/01-httpstruct.jpg)]](https://i-blog.csdnimg.cn/blog_migrate/32eb2f2cdc57ec51d1c62cb638380561.png)
基本格式:scheme://host[:port#]/path/…/[?query-string][#anchor]
- scheme:协议(例如:http, https, ftp)
- host:服务器的IP地址或者域名
- port#:服务器的端口(如果是走协议默认端口,缺省端口80)
- path:访问资源的路径
- query-string:参数,发送给http服务器的数据
- anchor:锚(跳转到网页的指定锚点位置)
例如:
客户端HTTP请求
URL只是标识资源的位置,而HTTP是用来提交和获取资源。客户端发送一个HTTP请求到服务器的请求消息,包括以下格式:
请求行、请求头部、空行、请求数据
四个部分组成,下图给出了请求报文的一般格式。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZBSblpUX-1590173902525)(../images/01_request.png)]](https://i-blog.csdnimg.cn/blog_migrate/a1745b9f2ff2c27e365d3383686a6e53.png)
一个典型的HTTP请求示例
GET https://www.baidu.com/ HTTP/1.1
Host: www.baidu.com
Connection: keep-alive
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.99 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=

最低0.47元/天 解锁文章
4470

被折叠的 条评论
为什么被折叠?



