2024/09/03 23:13:25
响应状态码
在调用云端录制 RESTful API 过程中,你可能收到如下 HTTP 状态码:
-
如果 HTTP 状态码为 200,则请求成功。
-
如果 HTTP 状态码不为 200,则请求失败。你可以根据对应的响应 Body 中可能出现的如下字段排查问题:
message
。code
和reason
。有时可能没有reason
。
例如,请求失败时,你可能收到如下响应:
JSON
# 401 Unauthorized
# 仅有 message
{
"message": "Invalid authentication credentials"
}
JSON
# 400 Bad Request
# 仅有 code 和 reason
{
"code": 2,
"reason": "Acquire: invalid resourceExpiredHour value!"
}
状态码
本节列出所有可能的响应 HTTP 状态码:
状态码 | 描述 |
---|---|
200 OK | 请求成功。 |
201 Created | 录制已经在进行中 ,请勿用同一个 Resource ID 重复 start 请求。 |
206 Partial Content | 整个录制过程中没有用户发流,或部分录制文件没有上传到第三方云存储,或录制进程还未结束。 |
400 Bad Request | 请求的语法错误(如参数错误)。如果你填入的 App ID 没有开通云端录制服务,也会返回 400 。 |
401 Unauthorized | 未经授权的(客户 ID/客户密钥匹配错误)。 |
404 Not Found | 服务器无法根据请求找到资源(网页)。 |
429 Too Many Requests | 并发请求过多。 |
500 Internal Server Error | 服务器内部错误,无法完成请求。 |
504 Gateway Timeout | 服务器内部错误。充当网关或代理的服务器未从远端服务器获取请求。 |
错误码
本节列出所有可能的 message
或 code
字段内容。
message
本节列出所有可能出现在响应 Body 中的 message
字段内容:
"appid is invalid"
:无效的 App ID。请确保 App ID 填写正确。如果你已经确认 App ID 填写正确,但仍出现该错误,请联系技术支持。"Unauthorized"
:HTTP 基本认证的Authorization
字段缺失。请按照 HTTP 基本认证再次生成Authorization
。"Invalid authentication credentials"
:HTTP 基本认证的Authorization
字段不正确。请按照 HTTP 基本认证再次生成Authorization
。"no Route matched with those values"
:请求路由错误。该错误可能由 HTTP 方法填写错误导致,例如将GET
方法填写为POST
;也可能由请求 URL 填写错误导致。"API rate limit exceeded"
:API 调用速率超出限制,即 10 次/秒。请控制 API 调用速率或联系技术支持提升速率限制。
code
本节列出所有可能出现在响应 Body 中的 code
字段内容,你还可以结合 reason
字段内容进一步细化排查方向:
2
:参数不合法。请确保参数类型、大小写和取值范围正确,且必填的参数均已填写。当你在acquire
请求 Body 中设置的startParameter
和start
请求 Body 中设置的clientRequest
不一致时,也会收到这个错误码。7
:录制已经在进行中,请勿用同一个 Resource ID 重复start
请求。8
:HTTP 请求头部字段错误,有以下几种情况:Content-type
错误,请确保Content-type
为application/json;charset=utf-8
。- 请求 URL 中缺少
cloud_recording
字段。 - 使用了错误的 HTTP 方法。
- 请求包体不是合法的 JSON 格式。
49
:使用同一个 Resource ID 和录制 ID (sid) 重复stop
请求。53
:已有相同 UID 的录制任务正在进行中。当采用相同参数再次调用acquire
获得新的 Resource ID,并用于start
请求时,会发生该错误。如需发起多路录制,需要在acquire
方法中填入不同的 UID。62
:如果调用acquire
请求时出现该错误,则表示你填入的 App ID 没有开通云端录制服务。如果调用start
请求时出现该错误,则表示由于网络原因没有连接到录制服务,请重新发起请求。65
:多为网络抖动引起。当调用start
方法收到该错误码时,需要使用同一 Resource ID 再次调用start
。建议使用退避策略重试两次,如第一次等待 3 秒后重试、第二次等待 6 秒后重试。109
:加入 RTC 频道的鉴权 Token 过期,你需要获取新的 Token。110
:加入 RTC 频道的鉴权 Token 错误,你需要确认你是否获取了正确的 Token。432
:请求参数错误。请求参数不合法,或请求中的 App ID,频道名或用户 ID 与 Resource ID 不匹配。433
:Resource ID 过期。获得 Resource ID 后必须在 5 分钟内开始云端录制。请重新调用acquire
获取新的 Resource ID。435
:没有录制文件产生。频道内没有用户发流,无录制对象。501
:录制服务正在退出。该错误可能在调用了stop
方法后再调用query
时发生。1001
:Resource ID 解密失败。请重新调用acquire
获取新的 Resource ID。1003
:App ID 或者录制 ID(sid)与 Resource ID 不匹配。请确保在一个录制周期内 Resource ID、App ID 和录制 ID 一一对应。1013
:频道名不合法。频道名必须为长度在 64 字节以内的字符串。以下为支持的字符集范围(共 89 个字符):- 26 个小写英文字母 a-z
- 26 个大写英文字母 A-Z
- 10 个数字 0-9
- 空格
- "!"、"#"、"$"、"%"、"&"、"("、")"、"+"、"-"、":"、";"、"<"、"="、"."、">"、"?"、"@"、"["、"]"、"^"、"_"、"、"、"|"、"~"、","
1028
:updateLayout
方法的请求包体中参数错误。