最近更新时间:2024-12-05 18:44:46
以下代码用于设置跨区域复制规则:
#include "ks3.h"
#include <iostream>
#include <fstream>
using namespace ks3;
int main() {
std::string host = "ks3-cn-beijing.ksyuncs.com";
// 准备client上下文信息
// 金山云主账号 AccessKey 拥有所有API的访问权限,风险很高。
// 强烈建议您创建并使用子账号账号进行 API 访问或日常运维,请登录 https://uc.console.ksyun.com/pro/iam/#/user/list 创建子账号。
std::string ak = "yourAccessKey"; // 填写实际的AccessKey
std::string sk = "yourSecretKey"; // 填写实际的SecretKey
// 填写源桶名
std::string bucket = "yourBucketName";
// 初始化网络资源
sdk::KS3Client::InitGlobalCurl();
// 初始化client
sdk::KS3Client client(host);
client.Init();
sdk::ClientContext ctx;
ctx.bucket = bucket;
ctx.accesskey = ak;
ctx.secretkey = sk;
sdk::ReplicationInfo info;
// 设置目标桶名
info.target_bucket.assign("target_bucket");
sdk::KS3Response response;
int code = client.SetReplication(ctx, info, &response);
if (code != 0) {
std::cout << "failed to call curl with error code " << code << std::endl;
return -1;
}
std::cout << response.status_code << std::endl;
std::cout << response.headers_buffer << std::endl;
std::cout << response.content.c_str() << std::endl;
sdk::KS3Client::DestroyGlobalCurl();
}
有关设置跨区域复制规则详情,请参见Put Bucket Replication。
以下代码用于获取跨区域复制规则:
#include "ks3.h"
#include <iostream>
#include <fstream>
using namespace ks3;
int main() {
std::string host = "ks3-cn-beijing.ksyuncs.com";
// 准备client上下文信息
// 金山云主账号 AccessKey 拥有所有API的访问权限,风险很高。
// 强烈建议您创建并使用子账号账号进行 API 访问或日常运维,请登录 https://uc.console.ksyun.com/pro/iam/#/user/list 创建子账号。
std::string ak = "yourAccessKey"; // 填写实际的AccessKey
std::string sk = "yourSecretKey"; // 填写实际的SecretKey
// 填写要查看的桶名
std::string bucket = "yourBucketName";
// 初始化网络资源
sdk::KS3Client::InitGlobalCurl();
// 初始化client
sdk::KS3Client client(host);
client.Init();
sdk::ClientContext ctx;
ctx.bucket = bucket;
ctx.accesskey = ak;
ctx.secretkey = sk;
// 结果将写入result_info
sdk::ReplicationInfo result_info;
sdk::KS3Response response;
int code = client.GetReplication(ctx, &result_info, &response);
if (code != 0) {
std::cout << "failed to call curl with error code " << code << std::endl;
return -1;
}
std::cout << response.status_code << std::endl;
std::cout << response.headers_buffer << std::endl;
std::cout << response.content.c_str() << std::endl;
if (response.status_code == 200) {
std::cout << result_info.target_bucket.c_str() << std::endl;
if (!result_info.prefixes.empty()) {
for (const auto & prefix : result_info.prefixes) {
std::cout << prefix.c_str() << std::endl;
}
}
}
sdk::KS3Client::DestroyGlobalCurl();
}
有关获取跨区域复制规则信息详情,请参见Get Bucket Replication。
以下代码用于获取跨区域复制规则:
#include "ks3.h"
#include <iostream>
#include <fstream>
using namespace ks3;
int main() {
std::string host = "ks3-cn-beijing.ksyuncs.com";
// 准备client上下文信息
// 金山云主账号 AccessKey 拥有所有API的访问权限,风险很高。
// 强烈建议您创建并使用子账号账号进行 API 访问或日常运维,请登录 https://uc.console.ksyun.com/pro/iam/#/user/list 创建子账号。
std::string ak = "yourAccessKey"; // 填写实际的AccessKey
std::string sk = "yourSecretKey"; // 填写实际的SecretKey
// 填写桶名
std::string bucket = "yourBucketName";
// 初始化网络资源
sdk::KS3Client::InitGlobalCurl();
// 初始化client
sdk::KS3Client client(host);
client.Init();
sdk::ClientContext ctx;
ctx.bucket = bucket;
ctx.accesskey = ak;
ctx.secretkey = sk;
sdk::KS3Response response;
int code = client.DeleteReplication(ctx, &response);
if (code != 0) {
std::cout << "failed to call curl with error code " << code << std::endl;
return -1;
}
std::cout << response.status_code << std::endl;
std::cout << response.headers_buffer << std::endl;
std::cout << response.content.c_str() << std::endl;
sdk::KS3Client::DestroyGlobalCurl();
}
有关删除跨区域复制规则详情,请参见Delete Bucket Replication。
纯净模式