错误返回
更新时间:2019-11-05
当用户访问API出现错误时,会返回给用户相应的错误码和错误信息,便于定位问题,并做出适当的处理。用户的请求会先经过网关,通过网关后才会转发到平台进行处理。当请求发生错误时,可能是网关的错误,也可能是平台的错误。
如果是网关发生错误,会将错误的信息写到响应的头部,遵循如下格式:
参数名 | 类型 | 说明 |
---|---|---|
X-Bce-Request-Id | String | 表示响应对应请求的RequestId |
X-Bce-Error-Code | String | 表示异常情况下的错误码 |
X-Bce-Error-Message | String | 表示异常情况下的错误信息 |
示例:
HTTP/1.1 404 Not Found
Content-Type: application/json;charset=UTF-8
Date: Wed, 08 Jul 2015 03:28:11 GMT
X-Bce-Exception-Point: Gateway
X-Bce-Request-Id: d8752367-38e8-45e4-b4c7-e53be3137ce5
X-Bce-Error-Code: ResourceNotFound
X-Bce-Error-Message: Resource not found.
请求发生平台错误时通过Response Body返回详细错误信息,遵循如下格式:
参数名 | 类型 | 说明 |
---|---|---|
code | String | 表示该错误的返回码 |
msg | String | 表示该错误的详细说明 |
data | json | 表示请求正常时的数据返回 |
示例:
{
"code": "9001",
"msg": "请求参数错误",
"data": null
}
网关错误码
下表列出网关的错误码:
错误码 | HTTP状态码 | 错误信息 | 说明 |
---|---|---|---|
InternalServerError | 500 | Internal server error. | 服务器内部错误 |
ServiceProtocolNotSupported | 404 | Service protocol {} is not supported. | 请求协议不支持 |
OverRateLimit | 429 | Over rate limit: {}. | 超过请求频率限制 |
CertificateException | 404 | 1.Certificate not found. 2.Get certificate from cert-center unsuccessfully. 3.Generate certificate failed. 4.Certificate invalid exception. | 1.未找到SSL证书. 2.证书生成失败. 3.证书无效. 4.请求路径无效. |
RequestPathInvalid | 404 | Request path is invalid. | 请求路径无效 |
RequestTimeTooSkewed | 403 | The difference between the request time and the server's time is too large. | 客户端时间与服务器时间相差过多 |
UnsupportedMediaType | 415 | ContentType of {} not supported. | 不支持此种类型的ContentType |
AmbiguousMapping | 400 | Ambiguous mapping found. | API冲突 |
ServicePathInvalid | 500 | Service path is invalid. | 后端path错误 |
EmptySignature | 400 | Signature is empty. | 签名为空 |
SignatureInvalid | 400 | Signature is invalid. | 签名无效 |
SignatureFormatInvalid | 400 | Signature format is invalid. | 签名格式错误 |
SignatureAppInvalid | 400 | App authorization failed. | APP key不存在 |
SignatureTimestampInvalid | 400 | Timestamp is invalid. | 签名时间戳格式错误 |
SignatureTimestampExpired | 400 | Timestamp is expired. | 签名过期 |
SignatureMismatch | 400 | Signature is mismatched. | 签名值不匹配 |
ResourceNotFound | 404 | Resource not found. | API不存在 |
BadRequest | 400 | 1.Invalid http method from backend server. 2.Backend server time out. 3.Backend server host {} is forbidden. | 1.后端HTTP方法异常 2.后端服务超时 3.禁止访问的后端地址 |
平台错误码
下表列出平台错误码:
错误码 | HTTP状态码 | 错误信息 | 说明 |
---|---|---|---|
0 | 200 | 成功 | 请求报文成功被处理 |
1001 | 200 | 网络繁忙,请稍后再试 | 未知错误 |
1002 | 200 | 网络繁忙,请稍后再试 | 超过生成appkey最大次数限制 |
1003 | 200 | DB重复的key | DB重复的key |
1004 | 200 | 网络繁忙,请稍后再试 | 未知错误码 |
1005 | 200 | 网络繁忙,请稍后再试 | 选择路由策略出错 |
1006 | 200 | 网络繁忙,请稍后再试 | 上传bos出错 |
1007 | 200 | 网络繁忙,请稍后再试 | 没有设置供应商子账户 |
1008 | 200 | 网络繁忙,请稍后再试 | 没有设置供应商模式url |
1009 | 200 | 网络繁忙,请稍后再试 | sftp下载文件失败 |
1010 | 200 | 暂不支持 | 暂不支持 |
1011 | 200 | 该模式不支持 | 该模式不支持 |
9001 | 200 | 请求参数错误 | 请求报文格式不正确 |
9002 | 200 | 请求Header参数错误 | 请求头中的参数没有通过验证 |
9006 | 200 | 没有可用的号码在号码组中 | 号码组中不存在可用的号码 |
9009 | 200 | 绑定关系过期或不存在 | 设定的绑定关系已经过期或不存在 |
9010 | 200 | 号码已经在其它号码集合中存在 | 当前号码已经被设定在其它组内,不能在添加到其它号码组中 |
9011 | 200 | 超过最大号码集合15个号码的限制 | 号码组集合最大允许添加15个号码 |
9012 | 200 | 号码组不存在 | 指定的号码组在平台中不存在或已被删除 |
9013 | 200 | telB已经在其它号码组中存在 | 绑定号码B已经被添加到其它号码组中,不允许被绑定 |
9014 | 200 | telX不存在 | telX不存在 |
9015 | 200 | 该区号号码池为空 | 该区号号码池为空 |
9016 | 200 | 您的账户已经欠费 | 您的账户已经欠费 |
10003 | 200 | 号码已有相关绑定关系 | 号码已有相关绑定关系 |
10011 | 200 | 号码池资源不足 | 号码池资源不足 |
10012 | 200 | 超过最大复用次数 | 超过最大复用次数,请使用其它X号码 |
其他 |