有奖捉虫:办公协同&微信生态&物联网文档专题 HOT
当客户端用户需要访问 CME 相关资源时,为简化开发者的工作,CME 提供了客户端 API 以及配套的 SDK。客户端 API 的调用方式如下所示:



1. 客户端请访问签名。
2. 服务端生成签名并返回给客户端。
3. 客户端发起登录,换取长期票据。
4. 调用 客户端 API。在票据有效期内,客户端可以无限次调用客户端 API,无需每次调用前都去服务端获取票据。
具体流程如下。
注意
CME 提供了 客户端 API 调试工具,开发者可以据此进行快速调试。
Web 端调用客户端 API 建议使用 Web SDK,而非通过 HTTP 请求直接裸调接口。

步骤1:申请访问签名

客户端携带用户身份标识(UserId)向自身后台申请访问签名。

步骤2:获取生成签名

开发者服务端在对客户端请求进行必要验证之后,生成客户端访问签名(Signature),并返回给客户端。签名中action字段值为Login,详情请参见 签名算法签名示例
注意
切勿将生成签名所依赖的 SecretId 和 SecretKey 泄露到客户端,否则将造成严重的安全后果。

步骤3:通过签名换取票据

客户端使用服务端返回的 Signature,调用如下接口换取长期鉴权票据,请求方式为 HTTP GET。请求结构如下:
GET https://open.cme.qcloud.com?signature=<Signature> HTTP/1.1
如果 Signature 校验成功,应答结果如下:
{
"Response":{
"AppId":1200000001,
"Authorization":"tf_*****************8c4727ec",
"Platform":"******",
"RequestId":"c0097a58-3be4-4050-ada4-266d9423fxxx",
"TfUid":"******"
}
}
如果 Signature 校验失败,应答结果如下:
{
"Response":{
"Error":{
"Code":"InvalidParameterValue.Platform",
"Message":"platform not exist"
},
"RequestId":"256594c9-5791-455e-8a51-4ec022cf6e9b"
}
}

步骤4:调用客户端 API

以 HTTP POST 方式发起请求,格式如下:
POST https://web-paas-api.cme.qcloud.com/PaaS/<ActionClass>/<ActionName>?auth=<Authorization> HTTP/1.1

{
<RequestBody>
}
其中:
ActionClass为接口分类。
ActionName为接口名称。
Authorization步骤3 获取的长期票据。
RequestBody为具体请求内容,格式为 JSON。
接口应答内容为 JSON,形式如下:
{
"Code": "<Code>",
"Message": "<Message>",
"EnglishMessage": "<EnglishMessage>",
"Data" : {
<Data>
}
}
其中:
Code 为错误码。Success 为成功,其余为失败。详情请参见 错误码
Message 为中文错误信息。
EnglishMessage 为英文错误信息。
Data 为接口具体应答内容。
以删除媒体接口为例,其请求如下:
POST https://web-paas-api.cme.qcloud.com/PaaS/Material/DeleteMaterial?auth=<Authorization> HTTP/1.1
{
"MaterialId": "38192156030633420589"
}
如果请求成功,应答如下:
{
"Code": "Success",
"EnglishMessage": "success",
"Message": "成功"
}