全部文档
当前文档

暂无内容

如果没有找到您期望的内容,请尝试其他搜索词

文档中心

API调用方式

最近更新时间:2023-05-23 17:49:54

1. 签名机制

点播转码OpenAPI的调用需要进行用户身份控制以防止非法访问。身份控制采用AWS签名算法进行签名认证,生成签名的方法详见签名算法

点播转码服务封装OpenAPI,对外提供三种语言(PHP/Python/JAVA)的SDK,推荐客户使用。

2. 请求结构

客户调用金山云点播转码服务的OpenAPI接口是通过向指定服务地址发送请求,并按照OpenAPI文档说明在请求中添加相应的公共参数和接口参数来完成的。

点播转码openAPI的请求结构组成如下:

2.1 服务地址

Host Service Region
kvs.cn-beijing-6.api.ksyun.com kvs 北京
kvs.cn-shanghai-2.api.ksyun.com kvs 上海

2.2 通信协议

支持通过 HTTP 或 HTTPS 两种方式进行请求通信,推荐使用安全性更高的 HTTPS方式发送请求。

2.3 请求方法

点播转码的OpenAPI支持GET或POST请求,具体查看接口说明。

  • 如果使用 GET 方式,参数均从 querystring 取得;如果使用 POST 方式,公共参数均从querystring取得,接口参数从请求Json Body中取得

2.4 请求参数

金山云OpenAPI请求包含两类参数:公共请求参数和接口请求参数。其中,公共请求参数是每个接口都要用到的请求参数,具体可参见公共参数小节;接口请求参数是各个接口所特有的,具体见各个接口的请求参数描述。

2.5 字符编码

请求及返回结果都使用UTF-8字符集进行编码。

3. SDK调用流程

3.1 SDK封装API请求,发往金山云IAM

3.2 IAM对接口调用请求进行鉴权,鉴权失败则返回调用方;鉴权成功后,将HTTP请求中的业务相关信息下发给点播转码API服务端。IAM同时对客户的QPM(Requests Per Minute)进行检查,超过QPM的请求会被直接拒绝,请您合理安排调用频率

3.3 点播转码API服务处理客户请求,将处理结果封装成JSON,返回给调用方

4. 请求示例

4.1 HTTP GET方法请求示例:


GET /?Action=GetPresetList&Version=2017-01-01&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20170519T060855Z&X-Amz-Credential=AKLT6UU6Vp_9SxWW5RAW6UHtdQ%2F20170519%2Fcn-beijing-6%2Fkvs%2Faws4_request&X-Amz-SignedHeaders=accept%3Bhost&X-Amz-Signature=0bfbb4876db7cf5b57206dbdcacff7f939e1ca395581e76d70a080b8c9c7bcdb HTTP/1.1

Host: kvs.cn-beijing-6.api.ksyun.com

Accept: application/json

4.2 HTTP POST方法请求示例:


POST /?Action=Preset&Version=2017-01-01&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20170517T132456Z&X-Amz-Credential=AKLT6UU6Vp_9SxWW5RAW6UHtdQ%2F20170517%2Fcn-beijing-6%2Fket%2Faws4_request&X-Amz-SignedHeaders=accept%3Bhost&X-Amz-Signature=a8317822a11c587d529d779557e873e4a5fcc145788547a13cb4f9ad00d92e0d HTTP/1.1

Host: kvs.cn-beijing-6.api.ksyun.com

Accept: application/json

Content-Type: application/json;charset=utf-8

Content-Length: %LEN

{

  %JSON Body

}

  • 特别注意以上示例中的Action与Version。新版媒体转码API的版本号:Version=2017-01-01,接口名Action值为各接口API。推荐使用新版SDK/API接入媒体转码

  • GET/POST示例中,HTTP header中Host为必需参数,且需要参与签名计算。而querystring中X-Amz-SignedHeaders=accept;host指定了HTTP Header中Host/Accept均需要参与签名

5. 返回结果

调用金山云的openAPI服务,调用成功,返回的HTTP状态码(Status)为200;调用失败,返回4xx 或5xx的HTTP状态码(Status)。

金山云的点播转码服务的调用返回的数据格式目前支持Json格式。

5.1 调用成功

转码API服务端会返回HTTP状态码200和Json格式的消息体,Json包含通用参数和特有参数,具体详见各接口。

5.2 调用失败

在转码API工作异常时,IAM会直接返回调用方。HTTP请求返回一个4xx或5xx的HTTP状态码,返回的HTTP消息体中包含具体的错误代码(code)及错误信息(message),详见金山云身份与访问控制服务

请注意,请求ID(RequestId)是用来唯一标识本次调用请求的,在调用方找不到错误原因时,可以联系金山云客服,并提供RequestId,以便我们尽快帮您解决问题。

失败示例

{    

    "RequestId": "68093a99-2f63-4f39-8f70-3047ab8ecb5b",

    "Error": {

        "Type": "Sender",

        "Code": "InvalidParameterValue",

        "Message": "An invalid or out-of-range value was supplied for the input parameter PathPrefix."    

    }

}

文档导读
纯净模式常规模式

纯净模式

点击可全屏预览文档内容
文档反馈