http协议具体内容:
HTTP协议(超文本传输协议HyperText Transfer Protocol),它是基于TCP协议的应用层传输协议,简单来说就是客户端和服务端进行数据传输的一种规则。
前端相后端发送请求,解析参数之后,处理这些逻辑业务,
后端将逻辑业务的结果返回给前端。
请求头就是送给后端的一些参数,如下:
- ①是请求方法,GET和POST是最常见的HTTP方法,初次以外还包括 DELETE、HEAD、OPTIONS、PUT、TRACE,不过现在大部分的浏览器只支持GET和POST
- ② 是请求对应的URL地址,他和报文头的Host属性,组合起来是一个完整的请求URL
- ③是协议名称称和版本号
- ④ 是报文头,有若干个属性,形式为key:val,服务端据此获取客户端信息
- ⑤是报文体,它将一个页面表单中的组件值通过param1=val1&parma=2的键值对形式编码成一个格式化串,它承载多个请求参数的数据,不但报文头可以传递请求参数,URL也可以通过/chapter15/user.html? param1=value1¶m2=value2”的方式传递数值
常见的请求头属性:
- Accpet :告诉服务端,客户端接收什么类型的响应
- Referer:表示这是请求是来自哪个URL
- Cache-Control:对缓存进行控制,如一个请求希望响应的内容在客户端缓存一年,或不被缓可以通过这个报文头设置
- Accept-Encoding:这个属性是用来告诉服务器能接受什么编码格式,包括字符编码,压缩形式(一般都是压缩形式)
- Host:指定要请求的资源所在的主机和端口
- User-Agent :告诉服务器,客户端使用的操作系统、浏览器版本和名称
响应头:返回对应请求的数据
-
① 报文协议及版本;
-
②状态码及状态描述;
-
③ 响应报文头,也是由多个属性组成;
-
④响应报文体,即我们要的数据。
状态码
表示当前响应的状态
响应报文的属性
- Cache-Control:响应输出到客户端后,服务端通过该属性告诉客户端该怎么控制响应内容的缓存
- ETag:表示你请求资源的版本,如果该资源发生变化,那么这个属性也会跟着变
- Location:在重定向中或者创建新资源时使用
- Set-Cookie:服务端可以设置客户端的cookie