Swift获取存储空间的存储容量

本文介绍如何获取指定存储空间(Bucket)的存储容量以及Bucket内不同存储类型文件(Object)的数量及其存储容量。

注意事项

  • 本文示例代码以华东1(杭州)的地域IDcn-hangzhou为例,默认使用外网Endpoint,如果您希望通过与OSS同地域的其他阿里云产品访问OSS,请使用内网Endpoint。关于OSS支持的RegionEndpoint的对应关系,请参见OSS地域和访问域名

示例代码

您可以使用以下代码获取存储空间的存储容量信息。

import AlibabaCloudOSS
import Foundation

@main
struct Main {
    static func main() async {
        do {
            // 填写Bucket所在地域。以华东1(杭州)为例,Region填写为cn-hangzhou。
            let region = "cn-hangzhou"
            // 填写Bucket名称。
            let bucket = "yourBucketName"
            // 可选项,指定访问OSS服务的域名。以华东1(杭州)为例,Endpoint填写为https://oss-cn-hangzhou.aliyuncs.com
            let endpoint: String? = nil

            // 从环境变量加载凭证(需提前设置 OSS_ACCESS_KEY_ID 和 OSS_ACCESS_KEY_SECRET)
            let credentialsProvider = EnvironmentCredentialsProvider()

            // 配置OSS客户端参数
            let config = Configuration.default()
                .withRegion(region) // 设置区域
                .withCredentialsProvider(credentialsProvider) // 设置凭证
                
            // 设置Endpoint
            if let endpoint = endpoint {
                config.withEndpoint(endpoint)
            }

            // 创建OSS客户端实例
            let client = Client(config)

            // 执行获取存储空间统计信息操作
            let result = try await client.getBucketStat(
                GetBucketStatRequest(
                    bucket: bucket
                )
            )

            // 输出操作结果
            print("result:\n\(result)")

        } catch {
            // 捕获并处理异常
            print("error:\n\(error)")
        }
    }
}

常用存储容量信息列表

参数

描述

Storage

存储空间总存储量,单位为字节

ObjectCount

存储空间中总的Object数量

MultipartUploadCount

存储空间中已经初始化但还未完成或者还未中止的分片上传数量

LiveChannelCount

存储空间中Live Channel的数量

LastModifiedTime

此次调用获取到的存储信息的时间点,格式为时间戳,单位为秒

StandardStorage

标准存储类型Object的存储量,单位为字节

StandardObjectCount

标准存储类型Object数量

InfrequentAccessStorage

低频存储类型Object的计费存储量,单位为字节

InfrequentAccessRealStorage

低频存储类型Object的实际存储量,单位为字节

InfrequentAccessObjectCount

低频存储类型Object数量

ArchiveStorage

归档存储类型Object的计费存储量,单位为字节

ArchiveRealStorage

归档存储类型Object的实际存储量,单位为字节

ArchiveObjectCount

归档存储类型Object数量

ColdArchiveStorage

冷归档存储类型Object的计费存储量,单位为字节

ColdArchiveRealStorage

冷归档存储类型Object的实际存储量,单位为字节

ColdArchiveObjectCount

冷归档存储类型Object数量

相关文档

  • 关于获取存储空间信息的完整示例代码,请参见Github示例

  • 关于获取存储空间信息的API接口,请参见GetBucketStat