开发者社区 问答 正文

直播API添加APP录制配置报错

直播API[font=微软雅黑, 'Microsoft Yahei', 'Hiragino Sans GB', tahoma, arial, 宋体] > [font=微软雅黑, 'Microsoft Yahei', 'Hiragino Sans GB', tahoma, arial, 宋体]添加APP录制配置
[font=微软雅黑, 'Microsoft Yahei', 'Hiragino Sans GB', tahoma, arial, 宋体]文档地址:
https://help.aliyun.com/document_detail/35416.html?spm=5176.doc35419.6.102.c9iGaZ


我写的php代码:

$url = 'https://cdn.aliyuncs.com?Action=AddLiveAppRecordConfig&DomainName=xxx.com&AppName=test_add&OssEndpoint=oss-cn-hangzhou.aliyuncs.com&OssBucket=shipin870929&OssObjectPrefix=record/live/{StreamName}/{UnixTimestamp}_{Sequence}';
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);




返回错误代码:


<?xml version='1.0' encoding='UTF-8'?><Error><RequestId>51BAC0B5-F979-4A6E-83A3-547FA28CF6CC</RequestId><HostId>cdn.aliyuncs.com</HostId><Code>MissingParameter</Code><Message>The input parameter "Version" that is mandatory for processing this request is not supplied.</Message></Error>

求解决  ,我按照 文档上写的啊 。






展开
收起
不死鸟000 2016-07-18 00:11:38 4623 分享 版权
阿里云 AI 助理回答

根据您的需求,您希望使用PHP代码来添加直播应用的录制配置。参考知识库中的信息,特别是【1】【文档名】直播录制部分,以下是您可能需要遵循的步骤和示例代码:

问题描述

您希望通过调用阿里云API来为您的直播应用添加录制配置。

解决步骤

步骤1:构造请求参数

首先,您需要准备调用AddLiveAppRecordConfig接口所需的参数。这些参数通常包括但不限于域名、AppName以及录制规则等。请确保您已阅读并理解了阿里云官方文档中关于此接口的具体要求。

$params = [
    'DomainName' => 'example.com', // 您的直播域名
    'AppName' => 'liveBucket****', // 应用名称
    // 其他按需配置参数,如录制模板ID、回调地址等
];

步骤2:设置HTTP请求头与签名

阿里云API请求需要进行签名认证,这通常涉及到AccessKeyId、AccessKeySecret以及生成签名的时间戳、随机字符串等。以下是一个简化的示例,实际应用中请根据阿里云官方SDK或手动签名流程进行。

$accessKeyId = 'YourAccessKeyId';
$accessKeySecret = 'YourAccessKeySecret';
$timestamp = gmdate('Y-m-d\TH:i:s\Z');
$nonce = rand(1000, 9999);
$stringToSign = 'GET&%2F&' . urlencode(http_build_query($params));
$sign = base64_encode(hash_hmac('sha1', $stringToSign, $accessKeySecret.'&', true));

$headers = [
    'Content-Type: application/x-www-form-urlencoded',
    'Authorization: ' . "acs $accessKeyId:$sign",
    'x-acs-date: ' . $timestamp,
    'x-acs-signature-nonce: ' . $nonce,
];

步骤3:发送HTTP GET请求

接下来,使用构造好的URL(包含所有查询参数)和请求头发送GET请求到阿里云API。

$url = 'https://cdn.aliyuncs.com?Action=AddLiveAppRecordConfig&' . http_build_query($params);

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($ch);
curl_close($ch);

// 处理响应结果
$result = json_decode($response, true);
if (isset($result['Code']) && $result['Code'] == '200') {
    echo "配置添加成功!";
} else {
    echo "配置添加失败,错误信息:" . $result['Message'];
}

注意事项

  • 确保您的AccessKeyId和AccessKeySecret是正确的,并且具有调用该API的权限。
  • 上述示例代码简化了签名过程,实际应用时建议使用阿里云提供的官方SDK以确保签名的正确性和安全性。
  • 根据实际需求调整 $params 中的其他配置项。
  • 调用前,请先在阿里云控制台或通过API完成相关录制规则的设置。

请按照上述步骤操作,如果遇到任何问题,可以进一步提供错误信息以便分析。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答