1 概述
API 接受请求并作出响应。响应会携带相应的响应码对错误进行大类区分。
响应码分为 HTTP 响应码和 API 响应码,各自的含义说明如下。
2 API 响应码( viSCADA )
成功的 API 请求响应格式(仅含响应数据,不含响应码)
{
${data}
}
失败的 API 请求响应格式
{
"code": ${code},
"message": "一些更友好的错误提示",
"details": []
}
响应码
状态码 | 英文释义 | 详细解释 | 处理建议 |
---|---|---|---|
0 | OK | 请求成功 | - |
1 | Canceled | 操作已取消 | - |
2 | Unknown | 未知错误 | 系统未知错误,建议联系开发排查 |
3 | Invalid Argument | 无效的请求参数 | 排查请求参数是否符合要求 |
4 | Deadline Exceeded | 已过期 | - |
5 | Not Found | 未找到请求资源 | 1、确认请求资源是否存在 2、寻求开发处理 |
6 | Already Exists | 待创建资源已存在 | 排查唯一性参数是否已存在 |
7 | Permission Denied | 无操作权限 | 1、寻找管理员开通相关权限 2、寻求开发处理 |
8 | Resource Exhausted | 已无可用资源 | - |
9 | Failed Precondition | 操作被拒绝 | - |
10 | Aborted | 操作中止 | - |
11 | Out Of Range | 操作尝试超过有效范围 | - |
12 | Unimplemented | 不支持此操作 | - |
13 | Internal | 服务内部错误 | 系统内部错误,建议联系开发排查 |
14 | Unavailable | 服务不可用 | - |
15 | Data Loss | 请求数据已丢失 | - |
16 | Unauthenticated | 未有效认证 | 进行相关认证 |
3 API 响应码(其他产品应用)
其他产品应用,非 viSCADA
API 请求的响应格式(无论请求成功/失败)
{
"code": ${code},
"msg": "",
"total": null,
"data": {},
"success": true,
"failed": false
}
响应码
状态码 | 英文释义 | 详细解释 |
---|---|---|
200 | Success | 请求成功 |
201 | Created | 已创建 |
202 | Accepted | 已接受 |
204 | NoContent | 无内容 |
301 | MovedPerm | 永久移动 |
303 | SeeOther | 查看其他位置 |
304 | NotModified | 未修改 |
400 | BadRequest | 错误请求 |
401 | Unauthorized | 未授权 |
403 | Forbidden | 禁止 |
404 | NotFound | 未找到 |
405 | BadMethod | 方法禁用 |
409 | Conflict | 冲突 |
415 | UnSupportedType | 不支持的类型 |
500 | Error | 请求异常 |
501 | NotImplemented | 尚未实施 |
600 | PermissionFailed | 权限异常 |
601 | AuthFailed | 认证异常 |
602 | StrongFailed | 强提醒 |
8001 | UnLoginError | 登录失效 |
8002 | UnAuthentication | 未认证 |
444 | ParameterError | 请求参数异常 |
666666 | BizError | 业务异常 |
777777 | HttpError | HTTP异常 |
888888 | DBError | 数据异常 |
999999 | Unknown | 系统异常 |
4 HTTP 响应码
状态码 | 含义 | 详细解释 |
---|---|---|
200 | 成功 | 服务器已成功处理了请求 |
201 | 已创建 | 请求成功并且服务器创建了新的资源 |
202 | 已接受 | 服务器已接受请求,但尚未处理 |
203 | 非授权信息 | 服务器已成功处理了请求,但返回的信息可能来自另一来源 |
204 | 无内容 | 服务器成功处理了请求,但没有返回任何内容 |
205 | 重置内容 | 服务器成功处理了请求,但没有返回任何内容 |
206 | 部分内容 | 服务器成功处理了部分 GET 请求 |
300 | 多种选择 | 针对请求,服务器可执行多种操作 |
301 | 永久移动 | 请求的网页已永久移动到新位置 |
302 | 临时移动 | 服务器目前从不同位置的网页响应请求,但请求者应继续使用原有位置来进行以后的请求 |
303 | 查看其他位置 | 请求者应当对不同的位置使用单独的 GET 请求来检索响应时,服务器返回此代码 |
304 | 未修改 | 自从上次请求后,请求的网页未修改过 |
305 | 使用代理 | 请求者只能使用代理访问请求的网页 |
307 | 临时重定向 | 服务器目前从不同位置的网页响应请求 |
400 | 错误请求 | 服务器不理解请求的语法 |
401 | 未授权 | 请求要求身份验证 |
403 | 禁止 | 服务器拒绝请求 |
404 | 未找到 | 服务器找不到请求的网页 |
405 | 方法禁用 | 禁用请求中指定的方法 |
406 | 不接受 | 无法使用请求的内容特性响应请求的网页 |
408 | 请求超时 | 服务器等候请求时发生超时 |
409 | 冲突 | 服务器在完成请求时发生冲突 |
410 | 已删除 | 如果请求的资源已永久删除,服务器就会返回此响应 |
411 | 需要有效长度 | 服务器不接受不含有效内容长度标头字段的请求 |
412 | 未满足前提条件 | 服务器未满足请求者在请求中设置的其中一个前提条件 |
413 | 请求实体过大 | 服务器无法处理请求,因为请求实体过大,超出服务器的处理能力 |
414 | 请求的URI过长 | 请求的URI过长,服务器无法处理 |
415 | 不支持的媒体类型 | 请求的格式不受请求页面的支持 |
416 | 请求范围不符合要求 | 如果页面无法提供请求的范围,则服务器会返回此状态代码 |
417 | 未满足期望值 | 服务器未满足”期望”请求标头字段的要求 |
500 | 服务器内部错误 | 服务器遇到错误,无法完成请求 |
501 | 尚未实施 | 服务器不具备完成请求的功能 |
502 | 错误网关 | 服务器作为网关或代理,从上游服务器收到无效响应 |
503 | 服务不可用 | 服务器目前无法使用 |
504 | 网关超时 | 服务器作为网关或代理,但是没有及时从上游服务器收到请求 |
505 | HTTP 版本不受支持 | 服务器不支持请求中所用的 HTTP 协议版本 |