HTTP协议介绍 | 青训营

52 阅读3分钟

初始HTTP

HTTP全称Hyper Text Transfer Protocol超文本传输协议 它是应用层协议,基于TCP协议 分为请求和响应两个部分

特点:简单可扩展
还是无状态(比较重要)的,每个请求都是孤立的
1、客户端发送请求给服务器 
2、服务器处理该请求
3、服务器将处理结果响应该客户端

bc1996d18f952bd5aac1dc0303d6e9d.png

HTTP发展史:

86a25cb1a3a4cbfca8f4e18760708da.png

协议分析

GET请求一个指定资源的表示形式. 使用GET的请求应该只被用于获取数据
POST用于将实体提交到指定的资源,通常导致在服务器上的状态变化或副作用
PUT用请求有效载荷替换目标资源的所有当前表示
DELETE删除指定的资源
HEAD请求一个与GET请求的响应相同的响应,但没有响应体
CONNECT建立一个到由目标资源标识的服务器的隧道。
OPTIONS用于描述目标资源的通信选项。
TRACE沿着到目标资源的路径执行一个消息环回测试
PATCH用于对资源应用部分修改。

状态码:

200 OK- 客户端请求成功
301 资源 (网页等) 被永转移到其它 URL
302 临时跳转
401 Unauthorized- 请求未经授权
404 请求资源不存在,可能是输入了错误的 URL
500 服务器内部发生了不可预期的错误504 Gateway Timeout-网关或者代理的服务器无法在规定的时间内获得想要的响应

RESTful API:一种API设计风格

(1)每一个URL代表一种资源

(2)客户端和服务器之间,传递这种资源的某种表现层

(3)客户端通过HTTP method,对服务器端资源进行操作,实现“表现层状态转化”。

缓存:

726aeb7ad68206fd8465c6a871daa98.png

cookie其实就是一些数据信息,类型为“小型文本文件”,存储于电脑上的文本文件中。

cookie机制采用的是在客户端保持 HTTP 状态信息的方案 每一个cookie都有一个name和一个value,且name是唯一的。 一个WEB浏览器也可以存储多个WEB站点提供的Cookie。浏览器一般只允许存放300个Cookie,每个站点最多存放20个Cookie,每个Cookie的大小限制为4KB。 利用cookie我们就可以实现自动登录,保存游览历史,身份验证等功能。

总结: HTTP协议是为了让服务端和浏览器端达到一个共同的原则,可以让两边进行通信,它重要的特点是一发一收,一问一答,其中的POST和GET本质没有区别,但是细节上有区别,GET习惯从服务器获取数据,POST是客户端给服务器提交数据,GET请求可以被缓存,可以被浏览器保存,POST请求不能被缓存。