关于响应的HTTP状态码

WEB后端服务开发中,经常会遇到回传HTTP状态码的些许困惑。HTTP状态码大致是这样约定的:

信息响应 (100--199)

成功响应 (200--299)

重定向消息 (300--399)

客户端错误响应 (400--499)

服务端错误响应 (500--599)

按说我们web开发要遵循定义规范,那么是否要在每一个响应中包含相应的状态码信息呢,其实也不是。我个人是这样考虑的,如果前端是浏览器来直接处理响应:比如访问链接,form提交等,那么后端应返回跟标准定义相符的HTTP状态码,这样浏览器不会有理解偏差。

javascript 复制代码
res.status(404).json({ error: '凭据无效' });

如果是由ajax/jquery/axios来提交申请并处理响应,那么只要前后端约定一致,后端返回状态码不一定要严格与HTTP状态码定义一致,甚至不用状态码而使用返回的数据中的特定属性参数来传反馈信息都是可以的,这样其实还能更准确个性化地将更完整丰富的信息传递给前端。

javascript 复制代码
res.json({"code":404,"msg":"凭据无效"});
javascript 复制代码
axios.post("/app/call").then(res=>{
	if (res.data.code!=200) return alert(res.data.msg);
	...
相关推荐
liuyouzhang1 小时前
将基于Archery的web数据库审计查询平台封装为jdbc接口的可行性研究(基于AI)
前端·数据库
码事漫谈7 小时前
大模型输出的“隐性结构塌缩”问题及对策
前端·后端
小江的记录本7 小时前
【网络安全】《网络安全常见攻击与防御》(附:《六大攻击核心特性横向对比表》)
java·网络·人工智能·后端·python·安全·web安全
这儿有一堆花7 小时前
前端三件套真的落后了吗?揭开现代 Web 开发的底层逻辑
前端·javascript·css·html5
努力的小雨7 小时前
龙虾量化实战法(QClaw)
后端
.Cnn8 小时前
JavaScript 前端基础笔记(网页交互核心)
前端·javascript·笔记·交互
橙露8 小时前
SpringBoot 整合 MinIO:分布式文件存储上传下载
spring boot·分布式·后端
醉酒的李白、8 小时前
Vue3 组件通信本质:Props 下发,Emits 回传
前端·javascript·vue.js
anOnion8 小时前
构建无障碍组件之Window Splitter Pattern
前端·html·交互设计
NotFound4868 小时前
实战分享Python爬虫,如何实现高效解析 Web of Science 文献数据并导出 CSV
前端·爬虫·python