控制台指南

最佳实践

开发者指南

数据湖存储

API 文档

SDK 文档

文档捉虫大赛火热进行中,好礼多多> HOT

简介

本文档提供关于清单的 API 概览以及 SDK 示例代码。

API 操作名 操作描述
PUT Bucket inventory 设置清单任务 设置存储桶的清单任务
GET Bucket inventory 查询清单任务 查询存储桶的清单任务
DELETE Bucket inventory 删除清单任务 删除存储桶的清单任务

设置清单任务

功能说明

PUT Bucket inventory 用于在存储桶中创建清单任务。

方法原型

public Guzzle\Service\Resource\Model PutBucketInventory(array $args = array());

请求示例

try {
   $result = $cosClient->putBucketInventory(array(
       'Bucket' => 'examplebucket-1250000000', //格式:BucketName-APPID
       'Id' => 'string',
       'Destination' => array(
           'COSBucketDestination'=>array(
               'Format' => 'CSV',
               'AccountId' => '100000000001',
               'Bucket' => 'qcs::cos:ap-chengdu::examplebucket-1250000000',
               'Prefix' => 'string',
           )
       ),      
       'IsEnabled' => 'True',
       'Schedule' => array(
           'Frequency' => 'Daily',
       ),  
       'Filter' => array(
           'Prefix' => 'string',
       ),  
       'IncludedObjectVersions' => 'Current',
       'OptionalFields' => array(
           'Size', 
           'ETag',
       )
   ));
   // 请求成功
   print_r($result);
} catch (\Exception $e) {
   // 请求失败
   echo "$e\n";
}

参数说明

参数名称 父节点 描述 类型 是否必选
Bucket 设置清单任务的存储桶,格式为 BucketName-APPID ,详情请参见 命名规范 String、Array
Id 清单的名称,与请求参数中的 id 对应 Array
IsEnabled 清单是否启用的标识:
  • 如果设置为 true,清单功能将生效
  • 如果设置为 false,将不生成任何清单
  • String
    IncludedObjectVersions 是否在清单中包含对象版本:
  • 如果设置为 All,清单中将会包含所有对象版本,并在清单中增加 VersionId,IsLatest,DeleteMarker 这几个字段
  • 如果设置为 Current,则清单中不包含对象版本信息
  • String
    Filter 筛选待分析对象。清单功能将分析符合 Filter 中设置的前缀的对象 Array
    Prefix Filter 需要分析的对象的前缀 String
    OptionalFields 清单结果中可选包含的分析项目名称,可选字段包括:Size,LastModifiedDate,StorageClass,ETag,IsMultipartUploaded,ReplicationStatus Array
    Schedule 配置清单任务周期 Array
    Frequency Schedule 清单任务周期,可选项为按日或者按周,枚举值:Daily、Weekly String
    Destination 描述存放清单结果的信息 Array
    COSBucketDestination Destination 清单结果导出后存放的存储桶信息 Array
    Bucket COSBucketDestination 清单分析结果的存储桶名 String
    AccountId COSBucketDestination 存储桶的所有者 UIN,例如100000000001 String
    Prefix COSBucketDestination 清单分析结果的前缀 String
    Format COSBucketDestination 清单分析结果的文件形式,可选项为 CSV 格式 String
    Encryption COSBucketDestination 为清单结果提供服务端加密的选项 Array
    SSE-COS Encryption COS 托管密钥的加密方式,无需填充 String

    其他清单配置参数请参考API文档。

    错误码说明

    该请求可能会发生的一些常见的特殊错误如下:

    错误码 描述 状态码
    InvalidArgument 不合法的参数值 HTTP 400 Bad Request
    TooManyConfigurations 清单数量已经达到1000条的上限 HTTP 400 Bad Request
    AccessDenied 未授权的访问。您可能不具备访问该存储桶的权限 HTTP 403 Forbidden

    查询清单任务

    功能说明

    GET Bucket inventory 接口用于查询存储桶中用户的清单任务信息。

    方法原型

    public Guzzle\Service\Resource\Model GetBucketInventory(array $args = array());

    请求示例

    try {
       $result = $cosClient->getBucketInvnetory(array(
           'Bucket' => 'examplebucket-1250000000', //格式:BucketName-APPID
           'Id' => 'string',
       ));
       // 请求成功
       print_r($result);
    } catch (\Exception $e) {
       // 请求失败
       echo($e);
    }

    参数说明

    参数名称 描述 类型
    bucket 查询清单任务的存储桶,格式为 BucketName-APPID ,详情请参见 命名规范 bucket
    Id 清单任务的名称,合法字符:a-z,A-Z,0-9,-,_,. String

    返回结果示例

    GuzzleHttp\Command\Result Object
    (
      [Destination] => Array
          (
              [COSBucketDestination] => Array
                  (
                      [Format] => CSV
                      [AccountId] => 100000000001
                      [Bucket] => qcs::cos:ap-chengdu::examplebucket-1250000000
                      [Prefix] => String
                  )
           )
       [Schedule] => Array
          (
              [Frequency] => Daily
          )
       [OptionalFields] => Array
          (
              [0] => Size
              [1] => ETag
          )
       [IsEnabled] => true
      [Id] => string
      [IncludedObjectVersions] => Current
      [RequestId] => NWRmMzQwMDVfMjNiMjU4NjRfOGQ4MV9iN2Jk****
    )

    返回结果说明

    参数名称 描述 类型
    Bucket 存储桶名称格式为 BucketName-APPID ,详情请参见 命名规范 String、Array
    Id 清单的名称,与请求参数中的 id 对应 Array
    IsEnabled 清单是否启用的标识:
  • 如果设置为 true,清单功能将生效
  • 如果设置为 false,将不生成任何清单
  • String
    IncludedObjectVersions 是否在清单中包含对象版本:
  • 如果设置为 All,清单中将会包含所有对象版本,并在清单中增加 VersionId,IsLatest,DeleteMarker 这几个字段
  • 如果设置为 Current,则清单中不包含对象版本信息
  • String
    Filter 筛选待分析对象。清单功能将分析符合 Filter 中设置的前缀的对象 Array
    Prefix 需要分析的对象的前缀 String
    OptionalFields 清单结果中可选包含的分析项目名称,可选字段包括:Size,LastModifiedDate,StorageClass,ETag,IsMultipartUploaded,ReplicationStatus Array
    Schedule 配置清单任务周期 Array
    Frequency 清单任务周期,可选项为按日或者按周,枚举值:Daily、Weekly String
    Destination 描述存放清单结果的信息 Array
    COSBucketDestination 清单结果导出后存放的存储桶信息 Array
    Bucket 清单分析结果的存储桶名 String
    AccountId 存储桶的所有者 UIN,例如100000000001 String
    Prefix 清单分析结果的前缀 String
    Format 清单分析结果的文件形式 String
    Encryption 为清单结果提供服务端加密的选项 Array
    SSE-COS COS 托管密钥的加密方式,无需填充 String

    删除清单任务

    功能说明

    DELETE Bucket inventory 删除存储桶中指定的清单任务。

    方法原型

    public Guzzle\Service\Resource\Model DeleteBucketInventory(array $args = array());

    请求示例

    try {
       $result = $cosClient->deleteBucketInvnetory(array(
           'Bucket' => 'examplebucket-1250000000', //格式:BucketName-APPID
           'Id' => 'string',
       ));
       // 请求成功
       print_r($result);
    } catch (\Exception $e) {
       // 请求失败
       echo($e);
    }

    参数说明

    参数名称 描述 类型
    bucket 存储桶名称的格式为 BucketName-APPID ,详情请参见 命名规范 String
    Id 清单任务的名称,合法字符:a-z,A-Z,0-9,-,_,. String
    目录