一 、HTTP协议的理解
HTTP(Hypertext Transfer Protocol) 超文本传输协议
HTTP是基于请求与响应模式的无状态的应用层协议
简单说:当用户发起请求,服务器做想关响应,这就是请求与响应的模式。
无状态:指的是第一次跟第二次请求之间并没有相关的关联
应用层协议:指的是工作早TCP协议之上
HTTP协议采用URL作为定位网络资源的标识
URL格式:http://host[:port][path] 每个URL需要以 http:// 开头
后面有三个域:
host : 合法的 Internet 主机域名或IP地址
port:端口号,缺省端口号为80
path:请求资源路径
二、HTTP 相关:
01、HTTP URL的理解
URL: 是通过HTTP协议存取资源的 Internet 路径,一个URL对应一个数据资源,就像我们电脑里边一个文件的路径一样,只不过这个文件不在电脑里,而是在 Internet 上,每个URL对应这 Internet 的数据资源
02、HTTP协议对资源的6个主要函数所对应的功能
GRT: 请求获取URL位置的资源
HEAD: 请求获取URL位置资源的响应新消息、报告,即获得该资源的头部信息
POST: 请求向URL位置的资源后附加的新数据
PUT: 请求向URL位置资源一个存储,覆盖原URL位置的资源
PATCH: 请求局部更新URL位置的资源,即改变该处资源的部分内容
DELETE: 请求删除URL位置存储的资源
事实上HTTP协议通过URL对资源做定位,通过以上6个方法对资源进行管理,每一次操作都是无状态的,也就是这个操作跟下一次操作并没有关系,在HTTP协议的世界里,网络通道跟服务器都是黑盒子,它能看到的就是URL链接以及对URL链接的相关操作
6个方法中PATCH 和 PUT 的区别:
PATCH 好处 :节省网络宽带,当URL 对应的资源是很庞大资源的时候,只需要改其中一个就用PATCH 来修改,PATCH也是HTTP协议改良后的一个新增指令 ,
表示该请求是一个局部更新,后端仅更新接收到的字段。
PUT : 也是更新资源,但要求前端提供的一定是一个完整的资源对象,理论上说,如果你用了put
,但却没有提供完整的UserInfo
,那么缺了的那些字段应该被清空
三、HTTP与Requests库功能