릴리스 노트
제품 공지
cos:DeleteObject. For more authorization, see business interfaces supporting CAM.cos:DeleteObject and cos:DeleteMultipleObjects. For more authorization, see business interfaces supporting CAM.cos:DeleteObject. For more authorization, see business interfaces supporting CAM.Function Name | Description | Example code |
Delete an object. | Provides the feature of deleting a single object and deleting multiple objects. |
qcloud_cos::CosAPI InitCosAPI() {uint64_t appid = 12500000000;std::string region = "ap-guangzhou";// Region of the bucket, see https://www.tencentcloud.com/document/product/436/62?from_cn_redirect=1std::string secret_id = "************************************"; // User's SecretId. It is recommended to use sub-account keys, with authorization following the least privilege principle to mitigate usage risks. For information on how to obtain sub-account keys, see https://www.tencentcloud.com/document/product/598/37140?from_cn_redirect=1std::string secret_key = "************************************"; // User's SecretKey. It is recommended to use sub-account keys, with authorization following the least privilege principle to mitigate usage risks. For information on how to obtain sub-account keys, see 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() {// You need to have obtained the temporary key results: tmp_secret_id, tmp_secret_key,// For generating temporary keys, see 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::DeleteObject(const DeleteObjectReq& req, DeleteObjectResp* resp)
void DeleteObjectDemo(qcloud_cos::CosAPI& cos) {std::string object_name = "test.txt";qcloud_cos::DeleteObjectReq req(bucket_name, object_name);// req.SetXCosVersionId("xxxxx"); // You can specify the version to deleteqcloud_cos::DeleteObjectResp resp;qcloud_cos::CosResult result = cos.DeleteObject(req, &resp);std::cout << "===================DeleteObjectResponse=====================" << std::endl;PrintResult(result, resp);std::cout << "============================================================" << std::endl;}
Parameter Name | Description | Type |
req | Delete file request | DeleteObjectReq |
resp | Delete file response | DeleteObjectResp |
Member or Function | Description | Parameter Type |
bucket_name | Bucket name, which can be set via the constructor or set method. The naming format for buckets is BucketName-APPID. For details, see Naming Conventions | string |
object_name | Object key (Key), which can be set via the constructor or set method. is the unique identifier of the object in the bucket. For example, in the object access domain name examplebucket-1250000000.cos.ap-guangzhou.myqcloud.com/doc/picture.jpg, the object key is doc/picture.jpg. For details, see Object Key | string |
SetXCosVersionId | Set the version number of the object to be deleted. This is an optional setting and is only available when bucket versioning is enabled. | string |
Member functions | Description | Return Type |
GetXCosRequestId | Obtain the request ID | string |
Member functions | Description | Return Type |
IsSucc | Indicates whether the operation is successful; returns true for success, false for failure. | bool |
GetHttpStatus | Obtain the http status code. | int |
GetErrorCode | The error code can be obtained when the request fails. | string |
GetErrorMsg | Obtain the error message when the request fails. | string |
GetXCosRequestId | Obtain the request 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;}}
CosResult CosAPI::DeleteObjects(const DeleteObjectsReq& req, DeleteObjectsResp* resp)
void DeleteObjectsDemo(qcloud_cos::CosAPI& cos) {std::vector<ObjectVersionPair> to_be_deleted;{ObjectVersionPair pair;std::string object_name = "test_dir/audio.mp3";std::string version_id = ""; // If needed, you can specify the version to delete; if it is empty, no version is specifiedto_be_deleted.push_back(ObjectVersionPair(object_name, version_id));}{std::string object_name = "test_dir/video.mp4";std::string version_id = ""; // If needed, you can specify the version to delete; if it is empty, no version is specifiedto_be_deleted.push_back(ObjectVersionPair(object_name, version_id));}qcloud_cos::DeleteObjectsReq req(bucket_name, to_be_deleted);// req.SetQuiet(); // When enabled in Quiet mode, no information about successfully deleted objects is returned; defaults to Verbose modeqcloud_cos::DeleteObjectsResp resp;qcloud_cos::CosResult result = cos.DeleteObjects(req, &resp);std::cout << "===================DeleteObjectsResponse=====================" << std::endl;std::vector<DeletedInfo> deleted_infos = resp.GetDeletedInfos(); // Entries of successfully deleted individual objects; this element is returned only in Verbose modestd::vector<ErrorInfo> error_infos = resp.GetErrorMsgs(); // Entries for objects with failed deletionsif (!error_infos.empty()) {std::cout << "==================Failed part message==================" << std::endl;for (ErrorInfo& error_info : error_infos) {std::cout << "key: " << error_info.m_key << "\\ncode: " << error_info.m_code << "\\nmessage: " << error_info.m_message << std::endl;std::cout << "====================================" << std::endl;}} else {std::cout << "DeleteObjects All Succ." << std::endl;}std::cout << "=============================================================" << std::endl;}
Parameter Name | Description | Type |
req | Batch delete request | DeleteObjectsReq |
resp | Batch delete response | DeleteObjectsResp |
Member or Function | Description | Parameter Type |
bucket_name | Bucket name, which can be set via the constructor or set method. The naming format for buckets is BucketName-APPID. For details, see Naming Conventions | string |
m_objvers | List of objects to be deleted. For specific usage, refer to the example. To delete a specific version of an object, set the version_id in ObjectVersionPair to non-empty. | vector<ObjectVersionPair> |
SetQuiet | Specifies that the deletion result is returned in quiet mode, meaning only error messages for failed deletions are returned. If not enabled, all information for both successful and failed deletions is returned. | None |
Member functions | Description | Return Type |
GetDeletedInfos | Get the entries of successfully deleted individual objects; this element is returned only in Verbose mode (that is, when SetQuiet is not enabled). | vector<DeletedInfo> |
GetErrorMsgs | Obtain the entries of objects that failed deletion. For specific usage, refer to the example. | vector<ErrorInfo> |
GetXCosRequestId | Obtain the request ID | string |
Member functions | Description | Return Type |
IsSucc | Indicates whether the operation is successful; returns true for success, false for failure. | bool |
GetHttpStatus | Obtain the http status code. | int |
GetErrorCode | The error code can be obtained when the request fails. | string |
GetErrorMsg | Obtain the error message when the request fails. | string |
GetXCosRequestId | Obtain the request 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;}}
피드백