产品动态
产品公告
功能名称 | 描述 | 示例代码 |
查询对象元数据 | 提供了查询对象元数据的功能。 |
qcloud_cos::CosAPI InitCosAPI() {uint64_t appid = 12500000000;std::string region = "ap-guangzhou";// bucket 的地域,请参见 https://www.tencentcloud.com/document/product/436/62?from_cn_redirect=1std::string secret_id = "************************************"; //用户的 SecretId,建议使用子账号密钥,授权遵循最小权限指引,降低使用风险。子账号密钥获取可参见 https://www.tencentcloud.com/document/product/598/37140?from_cn_redirect=1std::string secret_key = "************************************"; //用户的 SecretKey,建议使用子账号密钥,授权遵循最小权限指引,降低使用风险。子账号密钥获取可参见 https://www.tencentcloud.com/document/product/598/37140?from_cn_redirect=1qcloud_cos::CosConfig config(appid, secret_id, secret_key, region);qcloud_cos::CosAPI cos_tmp(config);return cos_tmp;}
qcloud_cos::CosAPI InitCosAPI() {// 需要已经获取到临时密钥的结果:tmp_secret_id、tmp_secret_key、// 临时密钥的生成参见 https://www.tencentcloud.com/document/product/436/14048?from_cn_redirect=1#cos-sts-sdkuint64_t appid = 12500000000;std::string region = "ap-guangzhou";std::string tmp_secret_id = "************************************";std::string tmp_secret_key = "************************************";std::string tmp_token = "token";qcloud_cos::CosConfig config(appid, tmp_secret_id, tmp_secret_key, region);config.SetTmpToken(tmp_token);qcloud_cos::CosAPI cos_tmp(config);return cos_tmp;}
CosResult CosAPI::HeadObject(const HeadObjectReq& req, HeadObjectResp* resp)
void HeadObjectDemo(qcloud_cos::CosAPI& cos) {std::string object_name = "test.txt";qcloud_cos::HeadObjectReq req(bucket_name, object_name);qcloud_cos::HeadObjectResp resp;qcloud_cos::CosResult result = cos.HeadObject(req, &resp);std::cout << "===================HeadObjectResponse=====================" << std::endl;std::map<std::string, std::string> cos_metas = resp.GetXCosMetas(); // 获取自定义的元数据mapstd::string cos_meta = resp.GetXCosMeta("x-cos-meta-*"); // 获取指定自定义的元数据std::string restore = resp.GetXCosRestore(); // 获得 archive 类型对象的当前恢复状态std::string sse = resp.GetXCosServerSideEncryption(); // Server端加密使用的算法PrintResult(result, resp);std::cout << "==========================================================" << std::endl;}
参数名称 | 描述 | 类型 |
req | Head 请求 | HeadObjectReq |
resp | Head 响应 | HeadObjectResp |
成员函数 | 描述 | 返回类型 |
GetXCosMetas | 获取自定义的元数据map | map<std::string, std::string> |
GetXCosMeta | 获取指定自定义的元数据 | string |
GetXCosRestore | 获取 archive 类型对象的当前恢复状态 | string |
GetXCosServerSideEncryption | 获取 Server 端加密使用的算法 | string |
GetEtag | 获取存储上传对象的 Etag | string |
GetXCosRequestId | 获取请求 ID | string |
成员函数 | 描述 | 返回类型 |
IsSucc | 判断是否成功,成功返回 true,失败返回 false。 | bool |
GetHttpStatus | 获得 http 状态码。 | int |
GetErrorCode | 请求失败时获取错误码。 | string |
GetErrorMsg | 请求失败时获取错误信息。 | string |
GetXCosRequestId | 获取请求 ID。 | string |
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;}}
文档反馈