0

我正在尝试通过他们的Postman Environment对 Agora Cloud Recording API 进行 API 调用,但在查询和停止调用期间出现 404 错误。获取调用返回带有 ResourceId 的 200 响应,开始调用也返回带有 sid 的 200 响应。

我已经从 Agora 仪表板启用了云录制功能。我还仔细检查了我的存储桶凭据。这是启动 API 主体的样子:

{
    "cname":"bhavya",
    "uid":"123",
    "clientRequest":{
        "token":"{{token}}",
        "recordingConfig":{
            "maxIdleTime":120,
            "streamTypes":2,
            "audioProfile":1,
            "channelType":1,
            "videoStreamType":0,
            "transcodingConfig":{
                "width":360,
                "height":640,
                "fps":30,
                "bitrate":600,
                "mixedVideoLayout":1,
                "maxResolutionUid":"1"
                }
            },
        "storageConfig":{
            "vendor":{{Vendor}},
            "region":{{Region}},
            "bucket":"{{Bucket}}",
            "accessKey":"{{AccessKey}}",
            "secretKey":"{{SecretKey}}"
        }   
    }
} 

此外,使用他们的交互式文档在开始步骤中给我一个 400 bad request 错误。这是收到的错误:

{
  "code": 2,
  "reason": "response detail error:2,errMsg:uid inside the List can't be convert to uint32_t!"
}

我在设置项目时错过了一些步骤吗?解决方案是什么?

4

2 回答 2

0

我的主要原因是存储云的区域(使用 Amazon S3)。所以这里主要解决问题:

  1. 记住您在acquire通话期间设置的区域。例如,如果我将其设置为AP这意味着亚太地区。
  2. 创建应该位于我们在获取调用中使用的同一区域的存储桶(AWS S3 或其他)。例如:AP在获取调用中使用过,所以我的存储桶应该像亚太(孟买)ap-south-1
  3. 现在在start调用的存储配置中,必须将区域设置为与存储桶的区域相同,即在我的情况下为 14 (AP-SOUTH-1)

请务必在此处查看所需区域的文档: https ://docs.agora.io/en/cloud-recording/cloud_recording_api_start?platform=RESTful#cloud-storage-configuration

于 2022-02-24T13:46:24.120 回答
0

过期/无效令牌将为开始请求返回响应 200 OK 但未开始录制。因此,在查询状态或调用停止时会抛出 404 错误,因为没有记录正在进行。

在获取资源和开始录制以及需要令牌的所有其他请求时,您必须使用有效令牌。

也不要忘记在请求标头中添加授权令牌。

于 2021-04-20T05:42:44.460 回答