必须知道的HTTP Status Code

现在前后端分离的开发模式越来越流行,后端负责开发对应的 API,前端只需要 关注前端页面的数据展示和前端逻辑即可。

对于前后端分离这种开发模式,我个人还是比较喜欢的,因为这样可以让更专业的人做更专业的事情,后端专注于做 API 的开发设计,前端专注于数据的展示,页面的样式。

这样前后端需要就某些信息达成一些共识,比如说常用的 HTTP 方法, 常用的 HTTP 状态码等

HTTP Method 较为简单,我们常用的习惯如下:

  1. 一般查询我们都会使用 GET 方法
  2. 创建新的记录使用 POST 方法
  3. 更新已有数据使用 PUT 方法
  4. 更新已有数据部分属性使用 PATCH 方法
  5. 删除已有数据使用 DELETE 方法

下面来详细介绍一下常用的 HTTP 状态码

1xx#

1xx 状态码一般是一个请求的中间状态,一般是信息提示,请求协商

100 Continue,请求未结束,应该继续请求

101 Switching Protocol,协议转换,在使用 Web Socket 的时候就会遇到,下面是一个示例,响应会有一个Connection: Upgrade 的请求头,Upgrade会指定要使用的协议名称

2xx#

2xx 一般表示请求处理成功

200 OK,请求处理成功

201 Created,请求处理成功,并且新资源已经创建

202 Accepted,请求已经接受,正在处理,尚未处理完成

204 No Content,响应内容为空,在 asp.net core 中返回一个 Json(null) 的时候就会是一个 NoContent 的结果

3xx#

3xx 一般表示重定向

301 Moved Permanently 永久重定向

302 Found 临时重定向

307 Temporary Redirect 临时重定向请求

308 Permanent Redirect 永久重定向请求

这几个重定向的区别:

  1. 301、302 只支持 GET 请求,如果是 POST 请求,重定向后会使用 GET 请求且 Body 数据会丢失
  2. 307、308 支持 POST 请求,在 POST 重定向的时候会带上原来请求的 body 再请求新的地址,body 数据不会丢失
  3. 302、307 是临时重定向
  4. 301、308 是永久重定向,是允许缓存的,浏览器可以缓存
  5. 304 Not Modified,资源未发生修改,可以直接使用浏览器本地缓存

4xx#

4xx 一般表示客户端请求错误

400 BadRequest,错误请求,一般用来表示请求参数异常,比如请求的某一个参数不能为空,但实际请求是空

401 Unauthorized,未授权,资源需要授权或登录,而用户没有登录或者没有提供访问所需的 Token 等

403 Forbidden,禁止访问,当前用户没有权限访问资源,如需要Admin角色的用户,但是请求的用户没有这个角色

404 NotFound,未找到资源,资源不存在

405 Method Not Allowed,不允许的方法调用,资源不支持的请求方法,比如资源只允许 GET 请求,但是实际请求使用了 POST 或 DELETE 方法

406 Not Acceptable,请求的资源客户端不支持处理,比如客户端希望获取 xml 的响应,但是服务器端只支持 JSON 响应

408 Request Timeout, 请求处理超时

409 Conflict,请求资源冲突,常发生在 PUT 更新资源信息时发生,比如更新时指定资源的 ETAG,但是PUT请求时,资源的 ETAG 已经发生变化

410 Gone,请求资源在源服务器上不再可用

411 Length Required,请求需要携带 Content-Length 请求头

412 Precondition Failed,请求预检失败,请求的某些参数不符合条件

The pre condition given in the request evaluated to false by the server.

413 Payload Too Large,请求的参数太大,请求的 body 过大,服务器拒绝处理

414 URI Too Long,请求的 URI 地址太长,服务器拒绝处理

415 Unsupported Media Type,不支持的媒体类型或不支持的编码,比如服务器只支持处理 JSON 请求,但是请求是 xml 格式

5xx#

5xx 一般表示服务端错误

500 Internal Server Error,服务器内部错误

501 Not Implemented 服务器不支持需要处理请求的功能,比如图片压缩等处理

502 Bad Gateway 反向代理或网关找不到处理请求的服务器

503 Service Unavailable 服务不可用

504 Gateway Timeout 网关超时

505 HTTP Version Not Supported,不支持的 HTTP 版本,服务器不支持或拒绝处理这个 HTTP 版本的请求

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/219904.html<

(0)
管理的头像管理
上一篇2025-04-14 08:03
下一篇 2025-04-14 08:04

相关推荐

  • 站群服务器和普通服务器到底哪个更适合GEO,怎么选?

    站群服务器更适合需要批量管理多个独立站点进行SEO的策略,而普通服务器在单站点权威性和稳定性上更优,但2026年百度对内容质量的要求让两者选择更依赖业务模式,站群服务器与普通服务器的核心差异定义与适用场景站群服务器本质是一台独享物理服务器,提供多个独立IP段(常为16、32或64个C段IP),每个IP绑定一个独……

    2026-07-28
    0
  • 物理服务器和云服务器做站群到底选哪个,哪个更稳定?

    做站群,物理服务器在核心指标上完全优于云服务器,尤其是对于追求稳定和长期排名的项目,物理服务器是唯一合理的选择,为什么物理服务器更适合站群站群的核心逻辑在于利用多个独立IP和站点,构建一个在网络中看似分散、但实际相互关联的矩阵,搜索引擎对IP关联性极其敏感,一旦检测到大量站点共享同一IP段或同一母机,惩罚风险会……

    2026-07-28
    0
  • 国内高防服务器哪家防御真实靠谱,怎么选?

    国内高防服务器哪家防御真实靠谱?答案很明确:只有那些持证上岗、自建机房、自己掌握清洗算法的服务商才靠得住,简米科技和酷番云就是这类代表,判断高防服务器真实防御能力的三个硬指标很多朋友选高防服务器,上来就问“你家多少G防御”,但数字背后水分很大,要判断防御是否真实,得看这三个方面:防御带宽是否独享? 有些服务商宣……

    2026-07-28
    0
  • 裸金属服务器和物理服务器有什么区别?,怎么选?

    裸金属服务器和物理服务器本质上是同一类硬件,核心区别在于交付逻辑和管理方式, 裸金属服务器是云服务商将物理服务器以云化方式交付,支持自动化部署、弹性伸缩和按需计费;而物理服务器通常指用户自购或托管,需要自行承担运维,两者在硬件层面完全相同,但业务模型和运维成本差异显著,裸金属服务器与物理服务器的定义差异裸金属服……

    2026-07-28
    0
  • 做GEO站群选哪家服务器服务商靠谱,怎么选?

    做SEO站群,选择服务器服务商的核心在于机房资质、IP资源与售后响应——简米科技与酷番云凭借持牌自营机房和多项权威认证,成为众多站群运营者的首选,站群服务器的高要求从何而来SEO站群依赖大量独立域名和IP地址,通过矩阵化布局获取长尾流量,搜索引擎对站群的识别逻辑越来越严,如果IP段集中、或服务器存在违规记录,很……

    2026-07-28
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注