API返回值通常包含状态码、数据体及错误信息,以JSON格式为主,成功调用返回200状态码及有效数据,异常则返回错误码和描述信息,需按
API 返回值详解
API 返回值
API(应用程序接口)的返回值是服务端对客户端请求的响应结果,通常包含状态信息、业务数据或错误信息,返回值的格式和内容直接影响客户端的处理逻辑,因此规范的返回值设计至关重要。
API 返回值的组成部分
组成部分 | 说明 |
---|---|
状态码 | HTTP 协议状态码(如 200 、404 、500 ),表示请求的整体结果。 |
业务状态码 | 自定义状态码(如 "code": 0 表示成功,"code": 1001 表示特定错误)。 |
数据体 | 请求成功时返回的业务数据(如 JSON 对象或数组)。 |
错误信息 | 请求失败时返回的错误描述(如错误码、错误消息)。 |
附加信息 | 分页参数(如 page 、pageSize )、时间戳、调试信息等。 |
常见返回值类型
成功响应
{ "status": 200, // HTTP 状态码 "code": 0, // 业务状态码(0 表示成功) "message": "OK", // 状态描述 "data": { // 业务数据 "id": 123, "name": "张三" } }
失败响应
{ "status": 404, // HTTP 状态码 "code": 1001, // 业务状态码(非 0 表示错误) "message": "资源未找到", // 错误描述 "error": { // 详细错误信息 "field": "userId", "msg": "用户不存在" } }
异常响应
{ "status": 500, // HTTP 状态码 "code": 999, // 系统级错误码 "message": "内部服务器错误", "details": "数据库连接失败" // 调试信息(可选) }
返回值设计原则
原则 | 说明 |
---|---|
一致性 | 所有接口遵循相同的返回值结构(如统一包含 code 、message 、data )。 |
明确性 | 状态码和错误信息需清晰表达结果,避免模糊描述(如 “未知错误”)。 |
可扩展性 | 支持未来新增字段(如分页参数、调试信息)且不影响现有逻辑。 |
安全性 | 避免返回敏感信息(如密码、隐私数据),错误信息中不暴露系统细节。 |
示例:分页接口返回值
{ "status": 200, "code": 0, "message": "请求成功", "data": { "items": [ // 当前页数据 {"id": 1, "name": "商品A"}, {"id": 2, "name": "商品B"} ], "pagination": { // 分页信息 "currentPage": 1, "pageSize": 10, "totalPages": 5, "totalItems": 50 } } }
相关问题与解答
问题 1:如何判断 API 请求是否成功?
解答:
判断 API 成功的依据包括:
- HTTP 状态码:
200
表示成功,其他状态码(如4xx
、5xx
)表示失败。 - 业务状态码:自定义
code
为0
时通常表示成功。 - 数据体:成功时
data
字段应包含有效数据,失败时可能为空或包含错误详情。
问题 2:如何处理 API 返回的错误?
解答:
处理错误的步骤如下:
- 检查 HTTP 状态码:优先处理
4xx
(客户端错误)和5xx
(服务器错误)。 - 读取业务状态码:根据
code
值识别错误类型(如1001
表示资源不存在)。 - 分析错误信息:结合
message
和error
字段中的详细信息,采取相应措施(如提示用户、重试请求或记录日志)。 - 异常上报:对系统级错误(如
500
)可上报至
各位小伙伴们,我刚刚为大家分享了有关“api 返回值”的知识,希望对你们有所帮助。如果您还有其他相关问题需要解决,欢迎随时提出哦!
【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!
发表回复