概述
HTTP就是目前使用最广泛的web应用程序使用的基础协议,例如浏览器访问网站,手机app访问后台服务器,都是通过HTTP实现得到。
比如,浏览器访问某个网站
1,首先建立TCP连接,HTTP编程是建立在TCP连接之上的,并且服务器总是使用8080端口和加密端口443,
2,然后,浏览器向服务器发送一个Http请求,服务器受到后,返回一个HTTP响应,并且在响应中,包含了网页的HTML内容,这样浏览器解析后就可以给用户显示网页了
那么,
一个完整的HTTP请求如下:
1.输入url后,将url传送到dns上进行域名解析,通过域名,获取服务器的端口和IP地址。
2.建立TCP连接,发起http请求,发送header、body等数据。
3.服务器端对http请求做出响应,将资源封装成响应包返回。关闭连接,浏览器得到html代码。
4.浏览器对html代码进行解析,并请求其中的资源,拿到返回包进行解析,比如图片、js等。
5.当浏览器受到第一个响应后,它解析HtML之后,又会发送一系列HTTP请求,因此服务器总是被动的接受客户端的一个请求,然后响应它,客户端则根据需要发送请求