最后更新时间:2020-06-10 16:46:13

    简介

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

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

    设置清单任务

    功能说明

    PUT Bucket inventory 用于在存储桶中创建清单任务,您可以对清单任务命名后,使用该请求创建清单任务,详细信息请参见 清单功能概述

    • COS 支持在每个存储桶中创建最多1000条清单任务。
    • 您必须在目标存储桶中写入存储桶策略,以供 COS 将清单任务的结果文件写入该存储桶中。
    • 调用该请求时,请确保您有足够的权限对存储桶的清单任务进行操作。存储桶所有者默认拥有该权限,若您无该项权限,请先向存储桶所有者申请该项操作的权限。

    请求示例

    示例1:创建清单任务,并设置服务端加密。

    cos.putBucketInventory({
        Bucket: 'sourcebucket-1250000000',  /* 必须 */
        Region: 'ap-beijing',               /* 必须 */
        Id: 'inventory_test',               /* 必须 */
        InventoryConfiguration: {
            Id: 'inventory_test',
            IsEnabled: 'true',
            Destination: {
                COSBucketDestination: {
                    Format: 'CSV',
                    AccountId: '100000000001',
                    Bucket: 'qcs::cos:ap-beijing::targetbucket-1250000000',
                    Prefix: 'inventory_test_prefix',
                    Encryption: {
                        SSECOS: ''
                    }
                }
            },
            Schedule: {
                Frequency: 'Daily'
            },
            Filter: {
                Prefix: 'filter_prefix'
            },
            IncludedObjectVersions: 'All',
            OptionalFields: [
                'Size',
                'LastModifiedDate',
                'StorageClass',
                'ETag'
            ]
        }
    }, function(err, data) {
        console.log(err || data);
    });

    示例2:创建清单任务,不设置服务端加密。

    cos.putBucketInventory({
        Bucket: 'sourcebucket-1250000000', /* 必须 */
        Region: 'ap-beijing',    /* 必须 */
        Id: 'inventory_test',       /* 必须 */
        InventoryConfiguration: {
            Id: 'inventory_test',
            IsEnabled: 'true',
            Destination: {
                COSBucketDestination: {
                    Format: 'CSV',
                    AccountId: '100000000001',
                    Bucket: 'qcs::cos:ap-beijing::targetbucket-1250000000',
                    Prefix: 'inventory_test_prefix'
                }
            },
            Schedule: {
                Frequency: 'Daily'
            },
            Filter: {
                Prefix: 'filter_prefix'
            },
            IncludedObjectVersions: 'All',
            OptionalFields: [
                'Size',
                'LastModifiedDate',
                'StorageClass',
                'ETag'
            ]
        }
    }, function(err, data) {
        console.log(err || data);
    });

    参数说明

    参数名称 描述 类型 是否必填
    Bucket 设置清单任务的存储桶,格式为 BucketName-APPID,此处填写的存储桶名称必须为此格式 String
    Region 存储桶所在地域,枚举值请参见 地域和访问域名 String
    Id 清单任务的名称。
    缺省值:None
    合法字符:a-z,A-Z,0-9,-,_,.
    String
    InventoryConfiguration 包含清单的配置参数 Object
    - Id 清单任务的名称。
    缺省值:None
    合法字符:a-z,A-Z,0-9,-,_,.
    String
    - IsEnabled 清单是否启用的标识。如果设置为 true,清单功能将生效;如果设置为 false,将不生成任何清单 String
    - IncludedObjectVersions 是否在清单中包含对象版本
    如果设置为 All,清单中将会包含所有对象版本,并在清单中增加 VersionId,IsLatest,DeleteMarker 这几个字段
    如果设置为 Current,则清单中不包含对象版本信息
    String
    - Filter 筛选待分析对象。清单功能将分析符合 Filter 中设置的前缀的对象 Object
    - - Prefix 需要分析的对象的前缀 String
    - OptionalFields 清单结果中可选包含的分析项目名称,可选字段包括:Size,LastModifiedDate,StorageClass,ETag,IsMultipartUploaded,ReplicationStatus Array
    - Schedule 配置清单任务周期 Object
    - - Frequency 清单任务周期,可选项为按日或者按周,枚举值:Daily、Weekly String
    - Destination 描述存放清单结果的信息 Object
    - - COSBucketDestination 清单结果导出后存放的存储桶信息 Object
    - - - Bucket 清单分析结果的存储桶名 String
    - - - AccountId 存储桶的所有者 ID,例如100000000001 String
    - - - Prefix 清单分析结果的前缀。如果您指定了清单投递的前缀,COS 后端会自动在您指定的前缀后边加上'/'。如您指定了'Prefix'作为前缀,则 COS 后端投递的清单报告路径为'Prefix/inventory_report' String
    - - - Format 清单分析结果的文件形式,可选项为 CSV 格式 String
    - - - Encryption 为清单结果提供服务端加密的选项 Object
    - - - - SSECOS COS 托管密钥的加密方式,无需填充,设置为空字符串 String

    回调函数说明

    function(err, data) { ... }
    参数名称             描述 类型
    err 请求发生错误时返回的对象,包括网络错误和业务错误,如果请求成功则为空,更多详情请参见 错误码 文档 Object
    - statusCode 请求返回的 HTTP 状态码,例如200、403、404等 Number
    - headers 请求返回的头部信息 Object
    data 请求成功时返回的对象,如果请求发生错误,则为空 Object
    - statusCode 请求返回的 HTTP 状态码,例如200、403、404等 Number
    - headers 请求返回的头部信息 Object

    查询清单任务

    功能说明

    GET Bucket inventory 用于查询存储桶中用户的清单任务信息。用户在发起该请求时,需要用户提供清单任务的名称,发起该请求时需获得请求签名,表明该请求已获得许可。有关清单的详细介绍,请参见 清单功能概述

    • 调用该请求时,请确保您有足够的权限对存储桶的清单任务进行操作。
    • 存储桶所有者默认拥有该权限,若您无该项权限,请先向存储桶所有者申请该项操作的权限。

    请求示例

    cos.getBucketInventory({
        Bucket: 'sourcebucket-1250000000',  /* 必须 */
        Region: 'ap-beijing',               /* 必须 */
        Id: 'inventory_test'                /* 必须 */
    }, function(err, data) {
        console.log(err || data);
    });

    返回示例

    {
        "InventoryConfiguration": {
            "Id":"inventory_test",
            "IsEnabled":"true",
            "Destination":{
                "COSBucketDestination": {
                    "Format":"CSV",
                    "AccountId":"100000000001",
                    "Bucket":"qcs::cos:ap-beijing::targetbucket-1250000000",
                    "Prefix":"inventory_test_prefix",
                    "Encryption": {
                        "SSECOS":""
                    }
                }
            },
            "Schedule": {
                "Frequency":"Daily"
            },
            "Filter": {
                "Prefix":"filter_prefix"
            },
            "IncludedObjectVersions":"All",
            "OptionalFields": [
                "Size",
                "LastModifiedDate",
                "StorageClass",
                "ETag"
            ]
        }
        "statusCode": 200,
        "headers": {}
    }

    参数说明

    参数名称 描述 类型 是否必填
    Bucket 查询清单任务的存储桶,格式为 BucketName-APPID,此处填写的存储桶名称必须为此格式 String
    Region 存储桶所在地域,枚举值请参见 地域和访问域名 String
    Id 清单任务的名称。
    缺省值:None
    合法字符:a-z,A-Z,0-9,-,_,.
    String

    回调函数说明

    function(err, data) { ... }
    参数名称                       描述 类型
    err 请求发生错误时返回的对象,包括网络错误和业务错误,如果请求成功则为空,更多详情请参见 错误码 文档 Object
    - statusCode 请求返回的 HTTP 状态码,例如200、403、404等 Number
    - headers 请求返回的头部信息 Object
    data 请求成功时返回的对象,如果请求发生错误则为空 Object
    - statusCode 请求返回的 HTTP 状态码,例如200、403、404等 Number
    - headers 请求返回的头部信息 Object
    - InventoryConfiguration 包含清单的配置参数 Object
    - - Id 清单任务的名称。
    缺省值:None
    合法字符:a-z,A-Z,0-9,-,_,.
    String
    - - IsEnabled 清单是否启用的标识。如果设置为 true,清单功能将生效;如果设置为 false,将不生成任何清单 String
    - - IncludedObjectVersions 是否在清单中包含对象版本
    如果设置为 All,清单中将会包含所有对象版本,并在清单中增加 VersionId,IsLatest,DeleteMarker 这几个字段
    如果设置为 Current,则清单中不包含对象版本信息
    String
    - - Filter 筛选待分析对象。清单功能将分析符合 Filter 中设置的前缀的对象 Object
    - - - Prefix 需要分析的对象的前缀 String
    - - OptionalFields 清单结果中可选包含的分析项目名称,可选字段包括:Size,LastModifiedDate,StorageClass,ETag,IsMultipartUploaded,ReplicationStatus Array
    - - Schedule 配置清单任务周期 Object
    - - - Frequency 清单任务周期,可选项为按日或者按周,枚举值:Daily、Weekly String
    - - Destination 描述存放清单结果的信息 Object
    - - - COSBucketDestination 清单结果导出后存放的存储桶信息 Object
    - - - - Bucket 清单分析结果的存储桶名 String
    - - - - AccountId 存储桶的所有者 ID,例如100000000001 String
    - - - - Prefix 清单分析结果的前缀。如果您指定了清单投递的前缀,COS后端会自动在您指定的前缀后边加上'/'。如您指定了'Prefix'作为前缀,则COS后端投递的清单报告路径为'Prefix/inventory_report' String
    - - - - Format 清单分析结果的文件形式,可选项为 CSV 格式 String
    - - - - Encryption 为清单结果提供服务端加密的选项 Object
    - - - - - SSECOS COS 托管密钥的加密方式,无需填充,设置为空字符串 String

    删除清单任务

    功能说明

    DELETE Bucket inventory 用于删除存储桶中指定的清单任务,用户需提供待删除的清单任务的名称。
    有关清单的详细介绍,请参见 清单功能概述

    • 调用该请求时,请确保您有足够的权限对存储桶的清单任务进行操作。
    • 存储桶所有者默认拥有该权限,如您无该项权限,请先向存储桶所有者申请该项操作的权限。

    请求示例

    cos.deleteBucketInventory({
        Bucket: 'sourcebucket-1250000000',  /* 必须 */
        Region: 'ap-beijing',               /* 必须 */
        Id: 'inventory_test'                /* 必须 */
    }, function(err, data) {
        console.log(err || data);
    });

    参数说明

    参数名称 描述 类型 是否必填
    Bucket 被删除清单任务的存储桶,格式为 BucketName-APPID,此处填写的存储桶名称必须为此格式 String
    Region 存储桶所在地域。枚举值请参见 地域和访问域名 String
    Id 清单任务的名称。缺省值:None
    合法字符:a-z,A-Z,0-9,-,_,.
    String

    回调函数说明

    function(err, data) { ... }
    参数名称            描述 类型
    err 请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功则为空,更多详情请参见 错误码 文档 Object
    - statusCode 请求返回的 HTTP 状态码,例如200、403、404等 Number
    - headers 请求返回的头部信息 Object
    data 请求成功时返回的对象,如果请求发生错误,则为空 Object
    - statusCode 请求返回的 HTTP 状态码,例如200、403、404等 Number
    - headers 请求返回的头部信息 Object

    Was this page helpful?

    本页内容是否解决了您的问题?

    • 完全没帮助
    • 文档较差
    • 文档一般
    • 文档不错
    • 文档很好
    反馈
    帮助