Go SDK概览

本文介绍对象存储OSS提供的Go SDK相关方法及其使用场景相关示例。

关于Region操作

函数名/特性归属函数名

使用场景/示例代码

DescribeRegions

查询所有支持地域对应的Endpoint信息

关于Bucket操作

分类

函数名/特性归属函数名

使用场景/示例代码

基础操作

CreateBucket

创建Bucket

DeleteBucket

删除Bucket

ListBuckets

返回请求者拥有的所有存储空间(Bucket)

ListObjectsV2

列出Bucket中所有文件(Object)的信息

IsBucketExist

判断Bucket是否存在

GetBucketInfo

获取Bucket信息

GetBucketLocation

获取Bucket所属地域信息

GetBucketStat

获取Bucket的存储容量以及Object数量

合规保留策略(WORM)

InitiateBucketWorm

新建合规保留策略

AbortBucketWorm

取消未锁定的合规保留策略

CompleteBucketWorm

锁定合规保留策略

ExtendBucketWorm

延长已锁定的合规保留策略对应BucketObject的保留天数

GetBucketWorm

获取合规保留策略

权限控制(ACL)

SetBucketACL

管理Bucket的读写访问权限

GetBucketACL

生命周期(Lifecycle)

SetBucketLifecycle

设置BucketObject的生命周期规则

GetBucketLifecycle

获取BucketObject的生命周期规则

DeleteBucketLifecycle

清空BucketObject的生命周期规则

传输加速(TransferAcceleration)

SetBucketTransferAcc

为存储空间(Bucket)配置传输加速

GetBucketTransferAcc

获取目标存储空间(Bucket)的传输加速配置

版本控制(Versioning)

SetBucketVersioning

设置Bucket版本控制状态

GetBucketVersioning

获取Bucket版本控制状态信息

ListObjectVersions

获取Bucket版本控制状态信息

数据复制(Replication)

PutBucketReplication

开启并设置Bucket的数据复制规则

PutBucketRTC

为已有的跨区域复制规则开启或关闭数据复制时间控制(RTC)功能

GetBucketReplication

查看Bucket已设置的数据复制规则

GetBucketReplicationLocation

查看可复制到的目标Bucket所在的地域

GetBucketReplicationProgress

查看Bucket的数据复制进度

DeleteBucketReplication

停止Bucket的数据复制任务并删除Bucket的复制配置

授权策略(Policy)

SetBucketPolicy

设置Bucket Policy

GetBucketPolicy

获取Bucket Policy

DeleteBucketPolicy

删除Bucket Policy

存储空间清单(Inventory)

SetBucketInventory

设置Bucket清单规则

GetBucketInventory

查看Bucket中指定的清单任务

ListBucketInventory

查看Bucket中所有的清单任务

DeleteBucketInventory

删除Bucket中指定的清单任务

日志转存(Logging)

SetBucketLogging

开启Bucket访问日志记录功能

GetBucketLogging

查看Bucket的访问日志配置情况

DeleteBucketLogging

关闭Bucket访问日志记录功能

静态网站(Website)

SetBucketWebsite

设置Bucket为静态网站托管模式

GetBucketWebsite

查看Bucket的静态网站托管状态

DeleteBucketWebsite

关闭Bucket的静态网站托管模式

防盗链(Referer)

SetBucketReferer

设置Bucket的防盗链规则

GetBucketReferer

查看Bucket的防盗链规则

标签(Tags)

SetBucketTagging

添加或修改Bucket标签

GetBucketTagging

查看Bucket标签信息

DeleteBucketTagging

删除Bucket标签信息

服务器端加密(Encryption)

SetBucketEncryption

配置Bucket的加密规则

GetBucketEncryption

获取Bucket的加密规则

DeleteBucketEncryption

删除Bucket的加密规则

请求者付费(RequestPayment)

SetBucketRequestPayment

设置Bucket为请求者付费模式

GetBucketRequestPayment

查看Bucket请求者付费模式配置信息

跨域资源共享(CORS)

SetBucketCORSV2

为指定的存储空间(Bucket)设置跨域资源共享CORS(Cross-Origin Resource Sharing)规则

GetBucketCORS

获取指定存储空间(Bucket)当前的跨域资源共享CORS规则

DeleteBucketCors

关闭指定存储空间(Bucket)对应的跨域资源共享CORS功能并清空所有规则

访问跟踪(AccessMonitor)

PutBucketAccessMonitor

配置Bucket的访问跟踪状态

GetBucketAccessMonitor

获取Bucket的访问跟踪状态

数据索引(Data Indexing)

OpenMetaQuery

Bucket开启元数据管理功能.

GetMetaQueryStatus

获取指定Bucket的元数据索引库信息

DoMetaQuery

查询满足指定条件的Object,并按照指定字段和排序方式列出Object信息

CloseMetaQuery

关闭Bucket的元数据管理功能

资源组

PutBucketResourceGroup

Bucket配置所属资源组

GetBucketResourceGroup

获取Bucket资源组ID

自定义域名(CNAME)

CreateBucketCnameToken

创建域名所有权验证所需的CnameToken

GetBucketCnameToken

获取已创建的CnameToken

PutBucketCname

为某个Bucket绑定CNAME

ListBucketCname

获取某个Bucket下绑定的所有CNAME列表

DeleteBucketCname

删除已绑定的CNAME

图片样式(Style)

PutBucketStyle

新建图片样式

GetBucketStyle

获取某个Bucket下指定的图片样式信息

ListBucketStyle

获取某个Bucket下已创建的所有图片样式

DeleteBucketStyle

删除某个Bucket下指定的图片样式

关于Object操作

分类

函数名/特性归属函数名

示例代码

基础操作

PutObject

上传Object

GetObject

获取Object

CopyObject

拷贝Object.

AppendObject

以追加写的方式上传Object

DeleteObject

删除单个Object

DeleteObjects

删除多个Object

GetObjectDetailedMeta

返回Object的基本meta信息,包括该ObjectETag、Size(文件大小)以及LastModified等,不返回文件内容

Callback

您只需在发送给OSS的请求中携带相应的Callback参数即可实现回调

RestoreObject

解冻归档Object

SelectObject

对目标文件执行SQL语句,返回执行结果

管理目录

PutObject

创建目录

DeleteObject

删除目录

断点续传上传(UploadFile)

UploadFile

使用断点续传执行上传大文件

分片上传(MultipartUpload)

InitiateMultipartUpload

完整的分片上传流程

UploadPart

UploadPartCopy

CompleteMultipartUpload

AbortMultipartUpload

如何取消分片上传事件?

ListMultipartUploads

列举所有执行中的Multipart Upload事件,即已经初始化但还未完成(Complete)或者还未中止(Abort)的Multipart Upload事件

ListUploadedParts

列举指定uploadId所属的所有已经上传成功Part

权限控制(ACL)

SetObjectACL

设置并获取Object的访问权限

GetObjectACL

软链接(Symlink)

PutSymlink

创建软链接

GetSymlink

获取软链接

标签(Tagging)

PutObjectTagging

设置或更新Object标签

GetObjectTagging

获取Object标签信息

DeleteObjectTagging

删除Object标签信息

图片处理

ProcessObject

对指定图片文件执行处理操作

视频转码

AsyncProcessObject

使用异步方式进行视频转码

关于Live Channel操作

分类

函数名/特性归属函数名

使用场景/示例代码

管理LiveChannel

CreateLiveChannel

创建LiveChannel

ListLiveChannel

列举LiveChannel

PutLiveChannelStatus

设置LiveChannel状态

SignRtmpURL

获取LiveChannel鉴权地址

GetLiveChannelStat

获取LiveChannel状态信息

GetLiveChannelInfo

获取LiveChannel配置信息

PostVodPlaylist

生成LiveChannel播放列表

GetVodPlaylist

查看LiveChannel播放列表

GetLiveChannelHistory

获取LiveChannel推流记录

DeleteLiveChannel

删除LiveChannel