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

     1  // Package storagev2 提供七牛云对象存储 v2 API 的 Go 客户端。
     2  //
     3  // 相比 storage 包(v1),storagev2 提供了类型化的请求/响应、自动区域检测、
     4  // 连接池、重试和 Provider/Interface 模式,推荐新项目使用。
     5  //
     6  // # 子包结构
     7  //
     8  //   - storagev2/credentials: 凭证管理,[credentials.NewCredentials] 创建凭证
     9  //   - storagev2/uploader: 上传管理,[uploader.NewUploadManager] 自动选择上传方式
    10  //   - storagev2/downloader: 下载管理,[downloader.NewDownloadManager]
    11  //   - storagev2/objects: 对象管理,[objects.NewObjectsManager] 提供流式 API
    12  //   - storagev2/uptoken: 上传凭证,[uptoken.NewPutPolicy] 创建上传策略
    13  //   - storagev2/apis: 低级 API 客户端,[apis.NewStorage] 提供所有类型化 API 方法
    14  //   - storagev2/region: 区域信息,RegionsProvider 接口
    15  //   - storagev2/http_client: HTTP 客户端选项
    16  //
    17  // # 快速开始
    18  //
    19  //	cred := credentials.NewCredentials("AccessKey", "SecretKey")
    20  //	putPolicy, _ := uptoken.NewPutPolicy("bucket", time.Now().Add(time.Hour))
    21  //
    22  //	uploadManager := uploader.NewUploadManager(&uploader.UploadManagerOptions{
    23  //	    Options: http_client.Options{Credentials: cred},
    24  //	})
    25  //
    26  //	objectName := "my-file.txt"
    27  //	err := uploadManager.UploadFile(context.Background(), "/path/to/file", &uploader.ObjectOptions{
    28  //	    BucketName: "bucket",
    29  //	    ObjectName: &objectName,
    30  //	    UpToken:    uptoken.NewSigner(putPolicy, cred),
    31  //	}, nil)
    32  package storagev2
    33  
    34  //go:generate go run ../internal/api-generator -- --api-specs=../api-specs/storage --api-specs=internal/api-specs --output=apis/ --struct-name=Storage --api-package=github.com/qiniu/go-sdk/v7/storagev2/apis
    35  //go:generate go build ./apis/...