http协议

HTTP--Hyper Text Transfer Protocol   超文本传输协议,规定了客户端与服务端消息传输的格式。

http是一种建立在TCP上的无状态连接,整个基本的工作流程是客户端发送一个HTTP请求,说明客户端想要访问的资源和请求的动作,服务端收到请求之后,服务端开始处理请求,并根据请求做出相应的动作访问服务器资源,最后通过发送HTTP响应把结果返回给客户端。

http四大特性:
  1.基于TCP/IP协议作用于应用层的协议
  2.基于请求响应
  3.无状态:是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一 方面,在服务器不需要先前信息时它的应答就较快。
  4.无连接:是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。

一、HTTP请求

        HTTP请求是客户端往服务端发送请求动作,告知服务器自己的要求。

        HTTP请求由状态行、请求头、请求正文三部分组成:

  状态行:包括请求方式Method、资源路径URL、协议版本Version;

  请求头:包括一些访问的域名、用户代理、Cookie等信息(k,v键值对的形式);

  请求正文:就是HTTP请求的数据。

        备注:请求方式Method一般有GET、POST、PUT、DELETE,含义分别是获取、修改、上传、删除,其中GET方式仅仅为获取服务器资源,方式较为简单,因此在请求方式为GET的HTTP请求数据中,请求正文部分可以省略,直接将想要获取的资源添加到URL中。下图所示就是GET的请求,没有请求正文。详细的说明在下边。

二、HTTP响应

        服务器收到了客户端发来的HTTP请求后,根据HTTP请求中的动作要求,服务端做出具体的动作,将结果回应给客户端,称为HTTP响应。

        HTTP响应由三部分组成:状态行、响应头、响应正文;

  状态行:包括协议版本Version、状态码Status Code、回应短语;

  响应头:包括搭建服务器的软件,发送响应的时间,回应数据的格式等信息(k,v键值对的形式);

  响应正文:就是响应的具体数据。

  响应状态码

1xx 表示HTTP请求已经接受,继续处理请求
2xx 表示HTTP请求已经处理完成
3xx 表示把请求访问的URL重定向到其他目录
4xx 表示客户端出现错误
5xx 表示服务端出现错误

 

posted @ 2019-07-09 22:09  adiugy  阅读(182)  评论(0编辑  收藏  举报