github.com/qiniu/go-sdk/v7@v7.27.0/storagev2/region/doc.go (about)

     1  // Package region 提供七牛云对象存储的区域信息和服务端点管理。
     2  //
     3  // 区域([Region])包含各服务的访问端点,SDK 通过 [RegionsProvider] 接口
     4  // 自动获取区域信息进行请求路由。
     5  //
     6  // # 获取区域
     7  //
     8  //	// 通过区域 ID 获取(z0=华东, z1=华北, z2=华南, na0=北美, as0=东南亚)
     9  //	r := region.GetRegionByID("z0", true)
    10  //
    11  // # RegionsProvider 接口
    12  //
    13  // [RegionsProvider] 是 storagev2 体系中传递区域信息的标准接口:
    14  //
    15  //	type RegionsProvider interface {
    16  //	    GetRegions(context.Context) ([]*Region, error)
    17  //	}
    18  //
    19  // [*Region] 本身实现了该接口,可直接作为 Provider 使用。
    20  //
    21  // # 自动查询区域
    22  //
    23  // 根据 Bucket 自动查询所属区域(推荐),结果会自动缓存:
    24  //
    25  //	bucketQuery, err := region.NewBucketRegionsQuery(
    26  //	    http_client.DefaultBucketHosts(),
    27  //	    &region.BucketRegionsQueryOptions{},
    28  //	)
    29  //	provider := bucketQuery.Query("accessKey", "my-bucket")
    30  //
    31  // # 服务端点
    32  //
    33  // [Endpoints] 结构包含 Preferred(首选)、Alternative(备选)和
    34  // Accelerated(加速)三组地址,SDK 按优先级依次尝试。
    35  //
    36  // 服务类型常量:
    37  //
    38  //   - [ServiceUp]: 上传服务
    39  //   - [ServiceIo]: IO 下载服务
    40  //   - [ServiceRs]: 资源管理服务
    41  //   - [ServiceRsf]: 资源列举服务
    42  //   - [ServiceApi]: API 服务
    43  //   - [ServiceBucket]: Bucket 服务
    44  package region