协议面试题

核心提示HTTP超文本传输协议,下文简称 HTTP,它的作用是用于实现服务器端和客户端的数据传输的。它可以传输任意的数据类型,如文本、HTML、图片、文件、声音等类型。简单来说,HTTP 的作用就像一个“快递”一样,用来承载客户端和服务器端的数据传

HTTP超文本传输协议,以下简称HTTP,用于实现服务器和客户端之间的数据传输。它可以传输任何数据类型,如文本、HTML、图片、文件、声音等。简单来说,HTTP就像一个“信使”,在客户端和服务器端之间承载数据传输,如下图所示:

1.HTTP功能

HTTP的主要特性如下:

快速:客户端向服务器发送请求时,只需要传递请求方法、路径和请求参数。因为协议简单,HTTP服务器的程序规模小,所以通信速度快。

无连接:所谓无连接是指每个连接只处理一个请求。服务器处理完客户的请求后,会立即断开连接。

无状态:HTTP不记录每个请求的身份信息,所以上一个请求和下一个请求“互不认识”。

可以传输任何数据类型:HTTP允许传输任何数据类型,只需在请求头中标识数据类型Content-Type即可。

一对一通信:每个HTTP请求,一个客户端对应一个服务器。

2.HTTP作文

HTTP由以下两部分组成:

请求对象请求。

响应对象响应。

每个HTTP请求由一个请求和一个响应组成,如下图所示:

2.1请求对象

该请求包含四个部分:

请求行

请求标题

空行

请求文本

如下图所示:

请求行

该请求包含以下三个部分:

请求类型方法,如GET。

请求的URL地址,例如https://www.baidu.com。

HTTP版本号,比如HTTP/1.1。

其中,所有请求类型如下:

请求标题

发送请求时,请求头描述了更多的请求信息。它以“name: value”的形式存在,每个请求头占一行。的常见请求标头如下:

主机:表示服务器的地址和端口号。

Content-Type:用于描述请求体中的数据类型。常见的类型有:json格式的application/json、表单格式的application/x-www-form-urlencoded、文件格式的multipart/form-data等。

Content-Length:用于描述请求体中的数据长度。需要注意的是,这里数据长度的统计单位是字节而不是字符。

用户代理:用户代理信息,如系统信息、浏览器类型和访问用户的版本信息。

2.1.3 空线

没有内容的空行用于分隔请求头和请求体的特殊组成部分。

请求文本

要在业务系统中传递的参数。

2.2响应对象

响应对象也由4部分组成:

线条

应答标题

空行

回复文本

如下图所示:

状态行

状态行用于描述服务器的返回状态。它由3部分组成:

HTTP版本号,比如HTTP/1.1。

状态代码,如200。

描述信息,如OK。

常见的状态代码如下:

200:成功返回。

31:永久重定向。

32:临时重定向。

404:找不到页面。

50:服务器程序出错。

响应标题

与请求头类似,响应头也以“name: value”的形式存在,每个头占一行。的常见标头包括Content-Type,用于描述响应正文的数据类型。常见的数据类型有:json格式的application/json和html格式的text/html。

2.2.3 空线

不包含任何内容的空行,用于分隔状态行和响应正文的特殊部分。

回应文本

所有数据返回给客户端。

摘要

HTTP超文本传输协议用于实现服务器和客户端之间的数据传输。它的特点是简单,快速,无连接,无状态,能够传输任意数据类型和一对一的通信。HTTP协议由两部分组成:请求对象和响应对象。

资料来源:https://www.cnblogs.com/vipstone/p/16465257.html

 
友情链接
鄂ICP备19019357号-22