【接口】HTTP(2) |请求方法及状态码

1、HTTP常用请求方法

  • get:获取资源或指定的数据请求指定的页面信息,返回实体主体(查询)

  • post:发送数据给服务器,创建或更新资源

  • put:创建/替换目标资源

  • delete:删除资源

  • get /zoos:列出所有动物园

  • post /zoos:新建一个动物园

  • get /zoos/ID:获取某个指定动物园的信息

  • get/zoos/ID/animals:列出某个指定动物园的所有动物

  • put /zoos/ID:更新某个指定动物园的信息(提供该动物园的全部信息)
  • patch /zoos/ID:更新某个指定动物园的信息(提供该动物园的部分信息)
  • delete /zoos/ID:删除某个动物园

  • delete /zoos/ID/animals/ID:删除某个指定动物园的指定动物

post patch put的区别

原本是数学上的概念,即使公式:f(x)=f(f(x)) 能够成立的数学性质。

用在编程领域,则意为**对同一个系统,使用同样的条件,一次请求和重复的多次请求对系统资源的影响是一致的。**

post和put的区别容易被简单地误认为

"POST表示创建资源,PUT表示更新资源.但实际上两者都可以用来创建或是更新数据.

单从技术上来说,他们并没有什么区别.

但是在HTTP规范中POST是非等幂的,多次调用会产生不同的结果。

比如:创建一个用户,由于网络原因或是其他原因多创建了几次,那么将会有多个用户被创建.

而PUT id/456则会创建一个id为456的用户,多次调用还是会创建的结果是一样的,所以PUT是等幂的.

PATCH诞生,只传一个userName到指定资源去,表示该请求是一个局部更新,后端仅更新接收到的字段。

PUT虽然也是更新资源,但要求前端提供的一定是一个完整的资源对象

理论上说,如果你用了PUT,但却没有提供完整的UserInfo,那么缺了的那些字段应该被清空.

另外PUT会有一个create操作,加入更新的id不存在,会进行创建,而PATCH则没有这个.

2、HTTP状态码

业务返回码和http状态码不一样⚠️

比如下面返回数据为: "code": 0 ------------ 是业务返回码

{

"code": 0,

"msg": "success",

"data": null

}

100~199表示请求已收到继续处理
2开头的都表示这个请求发送成功
  • 最常见的就是200,就代表这个请求是ok的,服务器也返回了
3开头的代表资源重定向
  • 最常见的是302,把这个请求重定向到别的地方了
4开头的代表客户端请求出错
  • 400 代表客户端发送的请求有语法错误,服务器无法解析
  • 401 代表访问的页面没有授权
  • 403 服务器拒绝提供服务
  • 404 代表没有这个页面,请求资源不存在
  • 死链接(Dead Links)指的是无效链接,也就是那些不可到达的链接。通俗地理解是以前可以通过点击这个链接到达网站页面,后续可能由于网站迁移、改版或操作不当等原因,使得链接指向的目标页面不存在而无法访问所遗留的链接,即称为死链接。

  • 访问死链接时,一般会出现"抱歉,您所访问的页面不存在"的提示信息或404 状态页面。

5开头的代表服务器有异常
  • 500 代表服务器内部异常
  • 504 代表服务器端超时,没返回结果
  • ⚠️502 Bad Gateway是指错误网关;无效网关;在互联网中表示一种网络错误。 表现在WEB浏览器中给出的页面反馈。此处一般指nginx做反向代理服务器时,所连接的服务器tomcat无响应导致的。

服务器方面无法给予正常的响应。一般常见于服务器崩溃后,nginx 无法正常收到服务端的响应,给客户端返回502状态码。

从网络角度,502已经与后端建立了连接,但超时;504与后端连接未建立,超时。

相关推荐
BillKu1 小时前
本地项目HTTPS访问问题解决方案
网络协议·http·https
菜鸟康3 小时前
Linux网络编程——https的协议及其加密解密方式
网络·网络协议·http
XYN613 小时前
【嵌入式学习6】多任务版TCP服务器
服务器·网络·笔记·python·网络协议·学习·tcp/ip
Mars--3 小时前
TCP三次握手和TCP四次挥手
网络·网络协议·tcp/ip
sniper_fandc14 小时前
网络编程—Socket套接字(UDP)
网络·网络协议·udp·javaee
jstart千语14 小时前
【网络协议】WebSocket讲解
网络·websocket·网络协议
hgdlip20 小时前
抖音直播位置与IP属地不同?解析原因与应对策略
网络·网络协议·tcp/ip
KnowSafe20 小时前
SSL报错ERR_SSL_PROTOCOL_ERROR怎么办?
网络·网络协议·ssl
Aa美少女战士21 小时前
多域名 SSL 证书能保护多少个域名?
网络协议·http·https
计算机鬼才~21 小时前
网络安全·第一天·IP协议安全分析
网络协议·安全·网络安全