0044-00000015

问题描述

PutLiveChannel请求中Target节点的FragCount字段有误。

问题原因

您发起了PutLiveChannel请求来创建一个LiveChannel,并在请求体XML中通过Target节点描述LiveChannel转储配置的各项参数,但是您提供的FragCount参数不符合接口要求。该参数表示m3u8文件中包含的ts文件个数,目前接口支持的取值范围是 [1, 100]。具体而言,转储类型为HLS时,OSS会在生成每个ts文件后更新m3u8文件。m3u8文件中最多包含最近的FragCount个ts文件。

问题示例

比如您发起了如下请求:

PUT /test-channel?live HTTP/1.1
Date: Wed, 24 Aug 2016 11:11:28 GMT
Content-Length: xxx
Host: test-bucket.oss-cn-hangzhou.aliyuncs.com
Authorization: OSS qn6q**************:77Dv****************
<?xml version="1.0" encoding="utf-8"?>
<LiveChannelConfiguration>
    <Description />
    <Status>enabled</Status>
    <Target>
        <Type>HLS</Type>
        <FragDuration>2</FragDuration>
        <FragCount>abc</FragCount>
    </Target>
    <Snapshot>
        <RoleName>role_for_snapshot</RoleName>
        <DestBucket>bucketdest</DestBucket>
        <NotifyTopic>notifyTopic</NotifyTopic>
        <Interval>1</Interval>
     </Snapshot>
</LiveChannelConfiguration

上述请求中Target节点的FragCount子节点值为abc,不是接口所要求的[1,100]范围内的整数,因此接口返回该错误。

解决方案

请确保请求体XML中Target节点各项参数符合接口要求,比如:

PUT /test-channel?live HTTP/1.1
Date: Wed, 24 Aug 2016 11:11:28 GMT
Content-Length: xxx
Host: test-bucket.oss-cn-hangzhou.aliyuncs.com
Authorization: OSS qn6q**************:77Dv****************
<?xml version="1.0" encoding="utf-8"?>
<LiveChannelConfiguration>
    <Description />
    <Status>enabled</Status>
    <Target>
        <Type>HLS</Type>
        <FragDuration>2</FragDuration>
        <FragCount>3</FragCount>
    </Target>
    <Snapshot>
        <RoleName>role_for_snapshot</RoleName>
        <DestBucket>snapshotdest</DestBucket>
        <NotifyTopic>snapshotnotify</NotifyTopic>
        <Interval>1</Interval>
     </Snapshot>
</LiveChannelConfiguration

相关文档