简介
本文档提供关于跨地域复制的 API 概览以及 SDK 示例代码。
API | 操作名 | 操作描述 |
PUT Bucket replication | 设置跨地域复制 | 设置存储桶的跨地域复制规则 |
GET Bucket replication | 查询跨地域复制 | 查询存储桶的跨地域复制规则 |
DELETE Bucket replication | 删除跨地域复制 | 删除存储桶的跨地域复制规则 |
设置跨地域复制
功能说明
设置指定存储桶的跨地域复制规则(PUT Bucket replication)。
方法原型
public Guzzle\Service\Resource\Model putBucketReplication(array $args = array());
请求示例
<?php
require dirname(__FILE__) . '/../vendor/autoload.php';
$secretId = "SECRETID"; //替换为用户的 secretId,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi$secretKey = "SECRETKEY"; //替换为用户的 secretKey,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi$region = "ap-beijing"; //替换为用户的 region,已创建桶归属的region可以在控制台查看,https://console.cloud.tencent.com/cos5/bucket$cosClient = new Qcloud\Cos\Client( array( 'region' => $region, 'scheme' => 'https', //协议头部,默认为http 'credentials'=> array( 'secretId' => $secretId , 'secretKey' => $secretKey)));
try { $result = $cosClient->putBucketReplication(array( 'Bucket' => 'examplebucket-1250000000', //存储桶名称,由BucketName-Appid 组成,可以在COS控制台查看 https://console.cloud.tencent.com/cos5/bucket 'Role' => 'qcs::cam::uin/100000000001:uin/100000000001', 'Rules'=>array( array( 'Status' => 'Enabled', 'ID' => 'string', 'Prefix' => 'string', 'Destination' => array( 'Bucket' => 'qcs::cos:ap-beijing::destinationbucket-1250000000', 'StorageClass' => 'standard', ), // ...repeated ), ), ))); // 请求成功 print_r($result);} catch (\Exception $e) { // 请求失败 echo "$e\n";}
参数说明
参数名称 | 类型 | 描述 | 是否必填 |
Bucket | String | 源存储桶,格式:BucketName-APPID | 是 |
Role | String | 发起者身份标示, 格式:qcs::cam::uin/:uin/ |
是 |
Rules | Array | 设置对应的规则,包括 ID,Status,Prefix,Destination | 是 |
ID | String | 设置规则的 ID | 是 |
Status | String | 设置 Rule 是否启用,可选值为 Enabled 或者 Disabled | 是 |
Prefix | String | 设置 Rule 的前缀匹配规则,为空时表示作用存储桶中的所有 objects | 是 |
Destination | String | 描述目的资源, 包括 Bucket 和 StorageClass | 是 |
Bucket | String | 设置跨地域复制的目标存储桶,格式:qcs::cos:[region]::[BucketName-APPID] |
是 |
StorageClass | String | 设置目的文件的存储类型,可选值为 STANDARD,STANDARD_IA | 否 |
查询跨地域复制
功能说明
查询指定存储桶的跨地域复制规则(GET Bucket replication)。
方法原型
public Guzzle\Service\Resource\Model getBucketReplication(array $args = array());
请求示例
<?php
require dirname(__FILE__) . '/../vendor/autoload.php';
$secretId = "SECRETID"; //替换为用户的 secretId,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi$secretKey = "SECRETKEY"; //替换为用户的 secretKey,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi$region = "ap-beijing"; //替换为用户的 region,已创建桶归属的region可以在控制台查看,https://console.cloud.tencent.com/cos5/bucket$cosClient = new Qcloud\Cos\Client( array( 'region' => $region, 'scheme' => 'https', //协议头部,默认为http 'credentials'=> array( 'secretId' => $secretId , 'secretKey' => $secretKey)));
try { $result = $cosClient->getBucketReplication(array( 'Bucket' => 'examplebucket-1250000000', //存储桶名称,由BucketName-Appid 组成,可以在COS控制台查看 https://console.cloud.tencent.com/cos5/bucket )); // 请求成功 print_r($result);} catch (\Exception $e) { // 请求失败 echo "$e\n";}
参数说明
参数名称 | 类型 | 描述 | 是否必填 |
Bucket | String | 查询跨地域复制的存储桶,格式:BucketName-APPID | 是 |
返回结果示例
Guzzle\Service\Resource\Model Object( [data:protected] => Array ( [Role] => qcs::cam::uin/100000000001:uin/100000000001 [Rules] => Array ( [0] => Array ( [ID] => string [Status] => Enabled [Prefix] => string [Destination] => Array ( [Bucket] => qcs::cos:ap-guangzhou::examplebucket2-1250000000 [StorageClass] => ) ) ) [RequestId] => NWQwOGI5MGVfNWFiMjU4NjRfNDUzY19mNzRh**** ))
返回结果说明
参数名称 | 类型 | 描述 | 父节点 |
Role | String | 发起者身份标示,格式:qcs::cam::uin/:uin/ |
无 |
Rules | Array | 设置对应的规则,包括 ID,Status,Prefix,Destination | 无 |
Rule | Array | 设置对应的规则,包括 ID,Status,Prefix,Destination | Rules |
ID | String | 设置规则的 ID | Rule |
Status | String | 设置 Rule 是否启用,可选值为 Enabled 或者 Disabled | Rule |
Prefix | String | 设置 Rule 的前缀匹配规则,为空时表示作用存储桶中的所有 objects | Rule |
Destination | String | 描述目的资源,包括 Bucket 和 StorageClass | Rule |
Bucket | String | 设置跨地域复制的目标存储桶,格式:qcs::cos:[region]::[BucketName-APPID] |
Destination |
StorageClass | String | 设置目的文件的存储类型,可选值为 STANDARD,STANDARD_IA | Destination |
删除跨地域复制
功能说明
删除指定存储桶的跨地域复制规则(DELETE Bucket replication)。
方法原型
public Guzzle\Service\Resource\Model deleteBucketReplication(array $args = array());
请求示例
<?php
require dirname(__FILE__) . '/../vendor/autoload.php';
$secretId = "SECRETID"; //替换为用户的 secretId,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi$secretKey = "SECRETKEY"; //替换为用户的 secretKey,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi$region = "ap-beijing"; //替换为用户的 region,已创建桶归属的region可以在控制台查看,https://console.cloud.tencent.com/cos5/bucket$cosClient = new Qcloud\Cos\Client( array( 'region' => $region, 'scheme' => 'https', //协议头部,默认为http 'credentials'=> array( 'secretId' => $secretId , 'secretKey' => $secretKey)));
try { $result = $cosClient->deleteBucketReplication(array( 'Bucket' => 'examplebucket-1250000000', //存储桶名称,由BucketName-Appid 组成,可以在COS控制台查看 https://console.cloud.tencent.com/cos5/bucket )); // 请求成功 print_r($result);} catch (\Exception $e) { // 请求失败 echo "$e\n";}
参数说明
参数名称 | 类型 | 描述 | 是否必填 |
Bucket | String | 删除跨地域复制的存储桶,格式:BucketName-APPID | 是 |
对象存储官网1折活动,限时活动,即将结束,速速收藏
同尘科技为腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利。同意关联立享优惠
转转请注明出处:https://www.yunxiaoer.com/145927.html