-
Notifications
You must be signed in to change notification settings - Fork 46
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #170 from tencentyun/feature_huberyxxiao_d0fbb83b
demo 优化
- Loading branch information
Showing
15 changed files
with
561 additions
and
4 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,73 @@ | ||
|
||
#include <stdlib.h> | ||
#include <sys/stat.h> | ||
|
||
#include <iostream> | ||
#include <map> | ||
#include <string> | ||
#include <thread> | ||
#include <vector> | ||
|
||
#include "cos_api.h" | ||
#include "cos_sys_config.h" | ||
#include "util/auth_tool.h" | ||
|
||
/** | ||
* 本样例演示了如何使用 COS C++ SDK 进行存储桶的删除 | ||
*/ | ||
using namespace qcloud_cos; | ||
|
||
uint64_t appid = 12500000000; | ||
std::string tmp_secret_id = "AKIDXXXXXXXX"; | ||
std::string tmp_secret_key = "1A2Z3YYYYYYYYYY"; | ||
std::string region = "ap-guangzhou"; | ||
std::string bucket_name = "examplebucket-12500000000"; | ||
std::string tmp_token = "token"; | ||
|
||
/* | ||
* 本方法包含调用是否正常的判断,和请求结果的输出 | ||
* 可通过本方法判断是否请求成功,并输出结果信息 | ||
*/ | ||
void PrintResult(const qcloud_cos::CosResult& result, const qcloud_cos::BaseResp& resp) { | ||
if (result.IsSucc()) { | ||
std::cout << "Request Succ." << std::endl; | ||
std::cout << resp.DebugString() << std::endl; | ||
} else { | ||
std::cout << "ErrorMsg=" << result.GetErrorMsg() << std::endl; | ||
std::cout << "HttpStatus=" << result.GetHttpStatus() << std::endl; | ||
std::cout << "ErrorCode=" << result.GetErrorCode() << std::endl; | ||
std::cout << "ErrorMsg=" << result.GetErrorMsg() << std::endl; | ||
std::cout << "ResourceAddr=" << result.GetResourceAddr() << std::endl; | ||
std::cout << "XCosRequestId=" << result.GetXCosRequestId() << std::endl; | ||
std::cout << "XCosTraceId=" << result.GetXCosTraceId() << std::endl; | ||
} | ||
} | ||
|
||
/* | ||
* 通过参数形式初始化 CosAPI 对象 | ||
*/ | ||
qcloud_cos::CosAPI InitCosAPI() { | ||
qcloud_cos::CosConfig config(appid, tmp_secret_id, tmp_secret_key, region); | ||
config.SetTmpToken(tmp_token); // 推荐使用临时密钥初始化 CosAPI 对象, 如果您使用永久密钥初始化 CosAPI 对象,请注释 | ||
qcloud_cos::CosAPI cos_tmp(config); | ||
return cos_tmp; | ||
} | ||
|
||
void DeleteBucket(qcloud_cos::CosAPI& cos) { | ||
qcloud_cos::DeleteBucketReq req(bucket_name); | ||
qcloud_cos::DeleteBucketResp resp; | ||
qcloud_cos::CosResult result = cos.DeleteBucket(req, &resp); | ||
|
||
std::cout << "===================DeleteBucketResponse=====================" | ||
<< std::endl; | ||
PrintResult(result, resp); | ||
std::cout << "=========================================================" | ||
<< std::endl; | ||
} | ||
|
||
|
||
int main() { | ||
qcloud_cos::CosAPI cos = InitCosAPI(); | ||
CosSysConfig::SetLogLevel((LOG_LEVEL)COS_LOG_ERR); | ||
DeleteBucket(cos); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,80 @@ | ||
|
||
#include <stdlib.h> | ||
#include <sys/stat.h> | ||
|
||
#include <iostream> | ||
#include <map> | ||
#include <string> | ||
#include <thread> | ||
#include <vector> | ||
|
||
#include "cos_api.h" | ||
#include "cos_sys_config.h" | ||
#include "util/auth_tool.h" | ||
|
||
/** | ||
* 本样例演示了如何使用 COS C++ SDK 进行存储桶列表的获取 | ||
*/ | ||
using namespace qcloud_cos; | ||
|
||
uint64_t appid = 12500000000; | ||
std::string tmp_secret_id = "AKIDXXXXXXXX"; | ||
std::string tmp_secret_key = "1A2Z3YYYYYYYYYY"; | ||
std::string region = "ap-guangzhou"; | ||
std::string tmp_token = "token"; | ||
|
||
/* | ||
* 本方法包含调用是否正常的判断,和请求结果的输出 | ||
* 可通过本方法判断是否请求成功,并输出结果信息 | ||
*/ | ||
void PrintResult(const qcloud_cos::CosResult& result, const qcloud_cos::BaseResp& resp) { | ||
if (result.IsSucc()) { | ||
std::cout << "Request Succ." << std::endl; | ||
std::cout << resp.DebugString() << std::endl; | ||
} else { | ||
std::cout << "ErrorMsg=" << result.GetErrorMsg() << std::endl; | ||
std::cout << "HttpStatus=" << result.GetHttpStatus() << std::endl; | ||
std::cout << "ErrorCode=" << result.GetErrorCode() << std::endl; | ||
std::cout << "ErrorMsg=" << result.GetErrorMsg() << std::endl; | ||
std::cout << "ResourceAddr=" << result.GetResourceAddr() << std::endl; | ||
std::cout << "XCosRequestId=" << result.GetXCosRequestId() << std::endl; | ||
std::cout << "XCosTraceId=" << result.GetXCosTraceId() << std::endl; | ||
} | ||
} | ||
|
||
/* | ||
* 通过参数形式初始化 CosAPI 对象 | ||
*/ | ||
qcloud_cos::CosAPI InitCosAPI() { | ||
qcloud_cos::CosConfig config(appid, tmp_secret_id, tmp_secret_key, region); | ||
config.SetTmpToken(tmp_token); // 推荐使用临时密钥初始化 CosAPI 对象, 如果您使用永久密钥初始化 CosAPI 对象,请注释 | ||
qcloud_cos::CosAPI cos_tmp(config); | ||
return cos_tmp; | ||
} | ||
|
||
void GetService(qcloud_cos::CosAPI& cos) { | ||
qcloud_cos::GetServiceReq req; | ||
qcloud_cos::GetServiceResp resp; | ||
qcloud_cos::CosResult result = cos.GetService(req, &resp); | ||
|
||
std::cout << "===================GetService=====================" | ||
<< std::endl; | ||
PrintResult(result, resp); | ||
const qcloud_cos::Owner& owner = resp.GetOwner(); | ||
const std::vector<qcloud_cos::Bucket>& buckets = resp.GetBuckets(); | ||
std::cout << "owner.m_id=" << owner.m_id << ", owner.display_name=" << owner.m_display_name << std::endl; | ||
for (std::vector<qcloud_cos::Bucket>::const_iterator itr = buckets.begin(); | ||
itr != buckets.end(); ++itr) { | ||
const qcloud_cos::Bucket& bucket = *itr; | ||
std::cout << "Bucket name=" << bucket.m_name | ||
<< ", location=" << bucket.m_location | ||
<< ", create_date=" << bucket.m_create_date << std::endl; | ||
} | ||
std::cout << "=========================================================" << std::endl; | ||
} | ||
|
||
int main() { | ||
qcloud_cos::CosAPI cos = InitCosAPI(); | ||
CosSysConfig::SetLogLevel((LOG_LEVEL)COS_LOG_ERR); | ||
GetService(cos); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,84 @@ | ||
|
||
#include <stdlib.h> | ||
#include <sys/stat.h> | ||
|
||
#include <iostream> | ||
#include <map> | ||
#include <string> | ||
#include <thread> | ||
#include <vector> | ||
|
||
#include "cos_api.h" | ||
#include "cos_sys_config.h" | ||
#include "util/auth_tool.h" | ||
|
||
/** | ||
* 本样例演示了如何使用 COS C++ SDK 进行存储桶检索和判断是否存在 | ||
*/ | ||
using namespace qcloud_cos; | ||
|
||
uint64_t appid = 12500000000; | ||
std::string tmp_secret_id = "AKIDXXXXXXXX"; | ||
std::string tmp_secret_key = "1A2Z3YYYYYYYYYY"; | ||
std::string region = "ap-guangzhou"; | ||
std::string bucket_name = "examplebucket-12500000000"; | ||
std::string tmp_token = "token"; | ||
|
||
/* | ||
* 本方法包含调用是否正常的判断,和请求结果的输出 | ||
* 可通过本方法判断是否请求成功,并输出结果信息 | ||
*/ | ||
void PrintResult(const qcloud_cos::CosResult& result, const qcloud_cos::BaseResp& resp) { | ||
if (result.IsSucc()) { | ||
std::cout << "Request Succ." << std::endl; | ||
std::cout << resp.DebugString() << std::endl; | ||
} else { | ||
std::cout << "ErrorMsg=" << result.GetErrorMsg() << std::endl; | ||
std::cout << "HttpStatus=" << result.GetHttpStatus() << std::endl; | ||
std::cout << "ErrorCode=" << result.GetErrorCode() << std::endl; | ||
std::cout << "ErrorMsg=" << result.GetErrorMsg() << std::endl; | ||
std::cout << "ResourceAddr=" << result.GetResourceAddr() << std::endl; | ||
std::cout << "XCosRequestId=" << result.GetXCosRequestId() << std::endl; | ||
std::cout << "XCosTraceId=" << result.GetXCosTraceId() << std::endl; | ||
} | ||
} | ||
|
||
/* | ||
* 通过参数形式初始化 CosAPI 对象 | ||
*/ | ||
qcloud_cos::CosAPI InitCosAPI() { | ||
qcloud_cos::CosConfig config(appid, tmp_secret_id, tmp_secret_key, region); | ||
config.SetTmpToken(tmp_token); // 推荐使用临时密钥初始化 CosAPI 对象, 如果您使用永久密钥初始化 CosAPI 对象,请注释 | ||
qcloud_cos::CosAPI cos_tmp(config); | ||
return cos_tmp; | ||
} | ||
|
||
void HeadBucket(qcloud_cos::CosAPI& cos) { | ||
qcloud_cos::HeadBucketReq req(bucket_name); | ||
qcloud_cos::HeadBucketResp resp; | ||
qcloud_cos::CosResult result = cos.HeadBucket(req, &resp); | ||
|
||
std::cout << "===================HeadBucketResponse=====================" | ||
<< std::endl; | ||
PrintResult(result, resp); | ||
std::cout << "==========================================================" | ||
<< std::endl; | ||
} | ||
|
||
void IsBucketExist(qcloud_cos::CosAPI& cos) { | ||
std::cout << "===================IsBucketExist=====================" | ||
<< std::endl; | ||
std::cout << (cos.IsBucketExist("abcdefg") ? "true" : "false") << std::endl; | ||
std::cout << (cos.IsBucketExist(bucket_name) ? "true" : "false") << std::endl; | ||
std::cout | ||
<< "====================================================================" | ||
<< std::endl; | ||
} | ||
|
||
|
||
int main() { | ||
qcloud_cos::CosAPI cos = InitCosAPI(); | ||
CosSysConfig::SetLogLevel((LOG_LEVEL)COS_LOG_ERR); | ||
HeadBucket(cos); | ||
IsBucketExist(cos); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,85 @@ | ||
|
||
#include <stdlib.h> | ||
#include <sys/stat.h> | ||
|
||
#include <iostream> | ||
#include <map> | ||
#include <string> | ||
#include <thread> | ||
#include <vector> | ||
|
||
#include "cos_api.h" | ||
#include "cos_sys_config.h" | ||
#include "util/auth_tool.h" | ||
|
||
/** | ||
* 本样例演示了如何使用 COS C++ SDK 进行存储桶的创建 | ||
*/ | ||
using namespace qcloud_cos; | ||
|
||
uint64_t appid = 12500000000; | ||
std::string tmp_secret_id = "AKIDXXXXXXXX"; | ||
std::string tmp_secret_key = "1A2Z3YYYYYYYYYY"; | ||
std::string region = "ap-guangzhou@xxx"; | ||
std::string bucket_name = "examplebucket-12500000000"; | ||
std::string tmp_token = "token"; | ||
|
||
/* | ||
* 本方法包含调用是否正常的判断,和请求结果的输出 | ||
* 可通过本方法判断是否请求成功,并输出结果信息 | ||
*/ | ||
void PrintResult(const qcloud_cos::CosResult& result, const qcloud_cos::BaseResp& resp) { | ||
if (result.IsSucc()) { | ||
std::cout << "Request Succ." << std::endl; | ||
std::cout << resp.DebugString() << std::endl; | ||
} else { | ||
std::cout << "ErrorMsg=" << result.GetErrorMsg() << std::endl; | ||
std::cout << "HttpStatus=" << result.GetHttpStatus() << std::endl; | ||
std::cout << "ErrorCode=" << result.GetErrorCode() << std::endl; | ||
std::cout << "ErrorMsg=" << result.GetErrorMsg() << std::endl; | ||
std::cout << "ResourceAddr=" << result.GetResourceAddr() << std::endl; | ||
std::cout << "XCosRequestId=" << result.GetXCosRequestId() << std::endl; | ||
std::cout << "XCosTraceId=" << result.GetXCosTraceId() << std::endl; | ||
} | ||
} | ||
|
||
/* | ||
* 通过参数形式初始化 CosAPI 对象 | ||
*/ | ||
qcloud_cos::CosAPI InitCosAPI() { | ||
qcloud_cos::CosConfig config(appid, tmp_secret_id, tmp_secret_key, region); | ||
config.SetTmpToken(tmp_token); // 推荐使用临时密钥初始化 CosAPI 对象, 如果您使用永久密钥初始化 CosAPI 对象,请注释 | ||
qcloud_cos::CosAPI cos_tmp(config); | ||
return cos_tmp; | ||
} | ||
|
||
void PutBucket(qcloud_cos::CosAPI& cos) { | ||
qcloud_cos::PutBucketReq req(bucket_name); | ||
//创建MAZ存储桶使用下方进行设置 | ||
//req.SetMAZBucket(); | ||
qcloud_cos::PutBucketResp resp; | ||
qcloud_cos::CosResult result = cos.PutBucket(req, &resp); | ||
|
||
std::cout << "===================PutBucketResponse=====================" | ||
<< std::endl; | ||
PrintResult(result, resp); | ||
std::cout << "=========================================================" | ||
<< std::endl; | ||
} | ||
|
||
|
||
int main() { | ||
try{ | ||
qcloud_cos::CosAPI cos = InitCosAPI(); | ||
CosSysConfig::SetLogLevel((LOG_LEVEL)COS_LOG_ERR); | ||
|
||
PutBucket(cos); | ||
} | ||
catch(const std::exception& e){ | ||
std::cerr << e.what() << "]]" << '\n'; | ||
|
||
std::cout << (strcmp(e.what(),"Invalid region configuration in CosConfig :ap-guangzhou@xxx") == 0) << std::endl; | ||
} | ||
std::cout << "Hello, World!" << std::endl; | ||
|
||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.