2019-07-10

HTTP协议简介

(1):HTTP是什么?

HTTP是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。请求和响应消息的头以ASCII码形式给出;而消息内容则具有一个类似MIME的格式。

注:

(1)TCP:传输控制协议(TCP,Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC 793  定义。TCP旨在适应支持多网络应用的分层协议层次结构。 连接到不同但互连的计算机通信网络的主计算机中的成对进程之间依靠TCP提供可靠的通信服务。TCP假设它可以从较低级别的协议获得简单的,可能不可靠的数据报服务。 原则上,TCP应该能够在从硬线连接到分组交换或电路交换网络的各种通信系统之上操作。

(2)IP地址:IP地址(Internet Protocol Address)是指互联网协议地址,又译为网际协议地址。IP地址是IP协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。

(2):HTTP的工作方式?

HTTP是基于客户/服务器模式,且面向连接的。典型的HTTP事务处理有如下的过程: 

(1)客户与服务器建立连接;

客户输入URL地址,通过http协议中的域名或IP找到服务器

(2)客户向服务器提出请求;

一个客户机与服务器建立连接后,发送一个请求给服务器,请求方式的格式为:统一资源标识符、协议版本号,后边是MIME信息包括请求修饰符、客户机信息和可能的内容。

(3)服务器接受请求,并根据请求返回相应的文件作为应答;

服务器接到请求后,会将获取过来的信息进行后端处理,并给予相应的响应信息,其格式为一个状态行包括信息的协议版本号、一个成功或错误的代码,后边是MIME信息包括服务器信息、实体信息和可能的内容。

(4)客户与服务器关闭连接。

(3):报文格式?

(1)请求报文格式如下:

请求行————请求头————空行————请求数据


请求行:说明请求方法,要访问的资源,以及所使用的的http版本。例如:POST/chapter17/user.html HTTP/1.1

请求头部:紧接第一行,请求行后面,其包含若干个属性,格式为:属性名:属性值     。

请求数据:请求数据包括POST传递数据的相关信息,Get方式传值时,请求数据为空。

注:注意回车符与换行符的输入

(2)应答报文格式如下:

状态行(下图中的1与2)————消息报头(响应头)————空行————响应正文(响应体)


 状态行:报文协议(http)/版本  状态码  状态描述。例:HTTP/1.1 200 OK

消息报头:类似于请求头,其包含若干个属性,格式为:属性名:属性值 。

响应正文:我们所需要的部分


HTTP请求方法:


HTTP 响应头信息

HTTP请求头提供了关于请求,响应或者其他的发送实体的信息。


HTTP的响应状态码由5段组成: 

• 1xx 消息,一般是告诉客户端,请求已经收到了,正在处理,别急... 。

• 2xx 处理成功,一般表示:请求收悉、我明白你要的、请求已受理、已经处理完成等信息。

• 3xx 重定向到其它地方。它让客户端再发起一个请求以完成整个处理。

 • 4xx 处理发生错误,责任在客户端,如客户端的请求一个不存在的资源,客户端未被授权,禁止访问等。

 • 5xx 处理发生错误,责任在服务端,如服务端抛出异常,路由出错,HTTP版本不支持等。

详细部分为:


如有错误之处,望多多包涵

你可能感兴趣的:(2019-07-10)