快速了解HTTP协议

拿我们使用输入一个“美女图片”浏览器浏览呈现出来一个些图片这样一个日常操作来讲,我们浏览器作为客户端和图片存放的容器--服务器之间就发生了HTTP通信。

WEB服务器和客户端:

WEB服务器使用的是HTTP协议,所以WEB服务器又称HTTP服务器。

  • 服务器提供资源,客户端向服务器发送HTTP请求去向HTTP服务器请求资源;
  • 服务器在HTTP响应中回送所请求的数据。

WEB资源:

WEB服务器是WEB资源的宿主,最简单的WEB资源就是WEB服务器的文件系统中的静态文件,资源并非一定是静态资源,还可以是根据需要动态生成的数据。

媒体类型:

HTTP会给传输的成百上千种数据打上MIME标签,使用MIME来标记数据格式;MIME类型是一种文本标记,语法:对象类型/子类型 如HTML类型MIME表示为:text/html

URI:

WEB资源都得有一个自己的名字,服务资源名被称为统一资源标识符:Uniform Resource Identifier(URI);URI唯一表示一个资源的位置,比如请求一张百度的图片:https://www.baidu.com/specials/saw.gif,有了地址,HTTP就可以解析出对象,常见的URI格式有URL和URN

URL:

  • 统一资源定义为,精准地描述了一个资源在服务器上的位置
  • URL由三个部分组成:协议部分,如:https://;服务器英特网地址,如:wwww.baidu.com;其余部分指定了资源在服务器上的路径,如:/specials/saw.gif

HTTP事务:

一个HTTP事务是由一条请求命令和一个响应结果组成,这种通信是通过格式化数据块进行的(HTTP报文)

  • 请求命令--方法:每条请求报文都是包含一个方法,告诉服务器执行什么动作,如获取一个页面,删除一个文件等;常见的就是GET方法和POST方法,前者表示发送一个命名资源(也就是通过URL传递信息),后者不是使用URL传递数据
  • 状态码--HTTP响应报文会携带状态码,200、302、404等;伴随状态码的还有一个解释性“原因短语”文本如200 ok、200 success
  • 一个WEB页面可不是一个简单的资源,通常它是由一组资源组成的集合。

报文:

如果说HTTP传输是一次快递的话,HTTP报文就是包裹。HTTP报文是由一行行简单的字符串组成,它是纯文本不是二进制所以很方便读写。请求报文、响应报文都是由起始行、首部、主体组成。

  • 起始行:报文的第一行,请求报文起始行说明要干什么;响应报文起始行说明出了什么情况:成功了还是失败

  • 首部字段:起始行后面有零行或者多行首部字段组成,看着很像JSON格式文本,首部字段以一个空行结束。

  • 主体:空行后面的就是主体,请求主题里面包含了要发给web服务器的信息,如登录用户名和密码;响应主体中包含了要返回给客户端的数据。起始行、首部字段都是文本且是结构化的,但是主体则不同,它可以是任意的二进制数据(图片、视频、音频、软件程序等),也可以是文本。

最后HTTP报文我们讲完了,HTTP协议是一个和我们最亲近的协议,它属于应用层协议。那么我们的请求数据如何发送给服务器呢?答案是通过TCP/IP协议--传输层协议,它会把报文从客户端到服务器端来回搬运。

猜你喜欢

转载自www.cnblogs.com/bigbosscyb/p/12366198.html