t-comm
Version:
专业、稳定、纯粹的工具库
76 lines (75 loc) • 2.62 kB
TypeScript
/**
* 解除腾讯云 COS 图片封禁
* - 当图片因内容审核被封禁后,可调用此方法解除封禁
* - 底层通过 putObjectCopy 设置 `x-cos-forbid-state: 0` 来解除封禁状态
*
* @param {object} config 配置信息
* @param {string} config.secretId 腾讯云 SecretId
* @param {string} config.secretKey 腾讯云 SecretKey
* @param {string} config.bucket COS 存储桶名称(如 'my-bucket-1250000000')
* @param {string} config.region COS 存储桶所在区域(如 'ap-guangzhou')
* @param {string} config.key 被封禁的对象键(Object Key),即图片在存储桶中的路径
* @returns {Promise<object>} 解封结果
* @throws 当参数不全时会抛出错误
* @example
* ```ts
* // 解除单张图片的封禁
* await unfreezeCosImage({
* secretId: 'your-secret-id',
* secretKey: 'your-secret-key',
* bucket: 'my-bucket-1250000000',
* region: 'ap-guangzhou',
* key: 'images/photo.jpg',
* });
* ```
*/
export declare function unfreezeCosImage({ secretId, secretKey, bucket, region, key, }: {
secretId: string;
secretKey: string;
bucket: string;
region: string;
key: string;
}): Promise<any>;
/**
* 批量解除腾讯云 COS 图片封禁
* - 对多张被封禁的图片并行执行解封操作
* - 底层通过 Promise.allSettled 并发调用 unfreezeCosImage
*
* @param {object} config 配置信息
* @param {string} config.secretId 腾讯云 SecretId
* @param {string} config.secretKey 腾讯云 SecretKey
* @param {string} config.bucket COS 存储桶名称(如 'my-bucket-1250000000')
* @param {string} config.region COS 存储桶所在区域(如 'ap-guangzhou')
* @param {Array<string>} config.keys 被封禁的对象键列表
* @returns {Promise<Array<object>>} 每张图片的解封结果数组,包含 key、success、data/error 字段
* @example
* ```ts
* const results = await batchUnfreezeCosImages({
* secretId: 'your-secret-id',
* secretKey: 'your-secret-key',
* bucket: 'my-bucket-1250000000',
* region: 'ap-guangzhou',
* keys: ['images/photo1.jpg', 'images/photo2.jpg'],
* });
*
* results.forEach(r => {
* if (r.success) {
* console.log(`${r.key} 解封成功`);
* } else {
* console.error(`${r.key} 解封失败:`, r.error);
* }
* });
* ```
*/
export declare function batchUnfreezeCosImages({ secretId, secretKey, bucket, region, keys, }: {
secretId: string;
secretKey: string;
bucket: string;
region: string;
keys: Array<string>;
}): Promise<Array<{
key: string;
success: boolean;
data?: any;
error?: any;
}>>;