HTTP请求行,请求体,请求头

HTTP协议是什么?

1.简介:
HTTP协议:超文本传输协议
基于TCP/IP通信协议来传递数据
基于客户端/服务端(C/S)架构模型,通过一个可靠的链接来交换信息,是一个无状态的请求响应协议
2.特点:
HTTP是无连接、媒体独立的、无状态的
无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。
媒体独立的:只要客户端和服务器知道如何处理的数据内容,任何类型的数据都可以通过HTTP发送。客户端以及服务器指定使用适合的MIME-type内容类型。
无状态:无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。

HTTP请求报文

HTTP请求报文由3部分组成:请求头+请求体+请求行
请求行:是请求方法,get和post是最常见的HTTP方法,除此以外还包括delete、head、options、put、trace;
为请求对应的url地址,它和报文头的host属性组成完整的请求url;
是协议名称及版本号

请求头:是HTTP的报文头,报文头包含若干个属性,格式为:属性名:属性值:,服务器端据此获取客户端的信息;
与缓存相关的规则信息均包含在header中

请求体:是报文体,它将一个页面表单中的组件值通过param1=value1¶m2=value2的键值对形式编码成一个格式化串,它承载多个请求参数的数据。不但报文体可以传递请求参数,请求URL也可以通过类似于“/chapter15/user.html? param1=value1¶m2=value2”的方式传递请求参数。

HTTP响应报文

HTTP的响应报文也由三部分组成:响应体+响应行+响应头
响应行:①报文协议及版本;
②状态码及状态描述;
响应头:③响应报文头,也是由多个属性组成;
响应体:④响应报文体,即我们真正要的“干货”

响应状态码 :
1xx 消息,一般是告诉客户端,请求已经收到了,正在处理,别急…
2xx 处理成功,一般表示:请求收悉、我明白你要的、请求已受理、已经处理完成等信息.
3xx 重定向到其它地方。它让客户端再发起一个请求以完成整个处理。
4xx 处理发生错误,责任在客户端,如客户端的请求一个不存在的资源,客户端未被授权,禁止访问等。
5xx 处理发生错误,责任在服务端,如服务端抛出异常,路由出错,HTTP版本不支持等。

你可能感兴趣的:(http)