帮你快速理解、总结文档立即下载

跨地域复制

最近更新时间:2023-11-23 19:42:33
我的收藏

简介

本文档提供关于跨地域复制的 API 概览以及 SDK 示例代码。
API
操作名
操作描述
设置跨地域复制
设置存储桶的跨地域复制规则
查询跨地域复制
查询存储桶的跨地域复制规则
删除跨地域复制
删除存储桶的跨地域复制规则

设置跨地域复制

功能说明

设置指定存储桶的跨地域复制规则(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
是