CDN接口调用通过向API接口的服务端地址发送HTTP GET请求,并按照接口说明在请求中加入相应请求参数,调用后系统会返回处理结果。
请求结构 CDN的API是RPC风格,您可以通过发送HTTP GET请求调用API。CDN支持通过HTTP或HTTPS通道进行请求通信,为了获得更高的安全性,推荐您使用HTTPS通道发送请求。请求及返回结果都使用UTF-8字符集进行编码,请求结构如下所示。
https://Endpoint/?Action=xx&Version=xx&Parameters Endpoint:CDN API的服务接入地址为cdn.aliyuncs.com。 Action:要执行的操作,例如调用AddCdnDomain添加加速域名。 Version:要使用的API版本,目前CDN的API版本是2018-05-10。 Parameters:请求参数,每个参数之间用&分隔。请求参数由公共请求参数和API自定义参数组成。公共参数中包含API版本号、身份验证等信息,详情请参见公共参数。 下面是一个调用StartCdnDomain启用状态为停用的加速域名的示例:
说明 为了方便您的查看,本文档中的示例都做了格式化处理。 http://cdn.aliyuncs.com?Action=StartCdnDomain &DomainName=example.com &Format=XML &AccessKeyId=xxx &SignatureMethod=HMAC-SHA1 &SignatureNonce=3ee8c1b8-83d3-44af-a94f-4e0ad82fd6cf &Version=2018-05-10 &SignatureVersion=1.0 ... API签名 CDN服务会对每个API请求进行身份验证,无论您使用HTTP还是HTTPS协议提交请求,都需要在请求中包含签名(Signature)信息。具体签名计算方法,请参见签名机制
CDN通过使用AccessKeyID和AccessKeySecret进行对称加密的方法来验证请求的发送者身份。 AccessKey是为阿里云账号和RAM用户发布的一种身份凭证(类似于用户的登录密码)。
说明 Access Key ID用于标识访问者的身份。 Access Key Secret用于加密签名字符串和服务器端验证签名字符串的密钥,必须严格保密。 您可以为阿里云主账号和子账号创建一个访问密钥(AccessKey)。在调用阿里云API时您需要使用AccessKey完成身份验证。主账号Accesskey泄露会威胁您所有资源的安全。建议您使用子账号(RAM用户)进行操作,可有效降低Accesskey泄露的风险。具体操作请参见创建AccessKey。
以StartCdnDomainAPI为例,假设使用的AccessKeyId为testid, AccessKeySecret为testsecret。 签名前的请求URL如下:
http://cdn.aliyuncs.com?Action=StartCdnDomain&DomainName=example.com &Format=XML &AccessKeyId=testid &SignatureMethod=HMAC-SHA1 &SignatureNonce=3ee8c1b8-83d3-44af-a94f-4e0ad82fd6cf &SignatureVersion=1.0 使用testsecret&,计算得到的签名值是:
YGOjauEr2WSn6scXDxc9X0DKwsM= 将签名作为Signature参数加入到URL请求中,最后得到的URL为:
http://cdn.aliyuncs.com?Action=StartCdnDomain&DomainName=example.com &Format=XML &AccessKeyId=testid &SignatureMethod=HMAC-SHA1 &SignatureNonce=3ee8c1b8-83d3-44af-a94f-4e0ad82fd6cf &SignatureVersion=1.0 &Signature=YGOjauEr2WSn6scXDxc9X0DKwsM= 阿里云CDN API为您提供如下签名机制示例代码:
python版本 java版本
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。