2024/09/05 16:39:40
响应状态码
本文提供云端转码和观众端多码率的响应状态码。
云端转码
在调用 RESTful API 过程中,你可能收到如下 HTTP 响应状态码:
-
如果 HTTP 状态码为 2XX,则请求成功。
-
如果 HTTP 状态码不为 2XX,则请求失败。
例如,请求失败时,你可能收到如下响应:
JSON
# 400 Bad Request
{
"message": "appid is invalid"
}
下表展示使用云端转码服务发起请求时,你可能会收到的所有响应状态码、对应的含义以及建议措施:
状态码 | 含义 | 建议措施 |
---|---|---|
200 OK | 请求成功。 | 无需排查。 |
废弃 201 Created | 任务已经在进行中,请勿用同一个 builderToken 重复开启任务。 | 无需排查。 |
202 Accepted | 服务端已经收到任务请求,但不代表执行完成。 | 因为不确定请求是否执行完成,所以建议通过 Query 方法查询执行状态,再进行下一步业务操作。 |
400 Bad Request | 请求的语法错误。可能是参数取值不符合要求,也可能是你的 App ID 未开通云端转码服务。 | 请结合响应 Body 中的 message 字段进一步排查。 |
401 Unauthorized | 用于 HTTP 基本认证的 Authorization 字段无效。 | 参考实现 HTTP 基本认证检查你的 Authorization 字段。 |
403 Forbidden | 你的 App ID 尚未开通云端转码服务。 | 请联系技术支持开通。 |
404 Not Found | 找不到 transcoder。 | 使用退避策略进行查询请求,确认 transcoder 是否创建成功。 |
409 Conflict | 已存在重名 instanceId 的 transcoder 任务。 | 如果你想创建新的 transcoder,请先将旧的 transcoder 删除。 |
429 Too Many Requests | 请求速率超过上限。 | 等待一段时间后再重试。 |
500 Internal Server Error | 声网服务器内部错误。 | 使用退避策略进行查询请求或联系技术支持。 |
501 Not Implemented | 该方法未实现。 | 无需排查。 |
503 Service Unavailable | 声网服务器暂时超载或在临时维护中。 | 使用退避策略进行查询请求或联系技术支持。 |
504 Gateway Timeout | 声网服务器内部错误,充当网关或代理的服务器未从上游服务器获取请求,上游服务器已关闭。 | 使用退避策略进行查询请求或联系技术支持。 |
使用云端转码响应状态码进行问题排查时,你需要了解如下注意事项:
- 如果请求失败,不要对响应 Body 里的
message
字段的内容做任何逻辑处理,建议主要对状态码做逻辑处理。 - 如果以上表格中的排查方法并未解决问题,请务必在日志中打印出响应 Header 中的
X-Request-ID
和X-Resource-ID
字段值,并请联系技术支持。 - 收到
404
的状态码后,如果Create
请求已返回成功且没有主动调用Delete
方法,或者 transcoder 的空闲状态超过请求参数中的idleTimeout
字段,建议采取退避算法(例如间隔 5 秒、10 秒、15 秒)调用Query
方法进行确认。 - 收到
5XX
的响应状态码后,一般是服务端在响应的过程中出现了问题,建议操作如下:- 使用退避策略进行查询请求:例如间隔 5 秒、10 秒、15 秒进行
Query
请求,查询服务状态。 - 联系技术支持。
- 使用退避策略进行查询请求:例如间隔 5 秒、10 秒、15 秒进行
观众端多码率
在调用 RESTful API 过程中,你可能收到如下 HTTP 响应状态码:
-
如果 HTTP 状态码为 2XX,则请求成功。
-
如果 HTTP 状态码不为 2XX,则请求失败。
例如,请求失败时,你可能收到如下响应:
JSON
# 400 Bad Request
# 可能没有 status 或 data
{
"status": "string",
"data": {
...
},
"message": "string"
}
下表展示使用观众端多码率服务发起请求时,你可能会收到的所有响应状态码、对应的含义以及建议措施::
状态码 | 含义 | 建议措施 |
---|---|---|
200 OK | 操作成功。 | 无需排查。 |
400 Bad Request | 请求无效。 | 检查请求参数是否合法。 |
401 Unauthorized | 鉴权无效。 | 检查用于 HTTP 认证的 Authorization 字段是否正确。详见实现 HTTP 安全认证。 |
404 Not Found | 请求的资源未找到。 | 检查 appid 或者 codecId 字段是否正确。 |
415 Unsupported Media Type | 不支持的媒体类型。 | 检查请求 Header 中的 Content-Type 字段是否设为 application/json 。 |
429 Too Many Requests | 请求过于频繁。 | 等待一段时间后再重试。 |
500 Internal Server Error | 服务器内部错误。 | 尝试重试几次。 |
信息
如果以上排查方法并未解决问题,请务必在日志中打印出响应 Header 中的 X-Request-ID
和 X-Resource-ID
字段值,并请联系技术支持。