查看PDF

ObsClient初始化

更新时间: 2019-03-13 10:19

功能说明

ObsClient是访问OBS服务的Go客户端,它为调用者提供一系列与OBS服务进行交互的接口,用于管理、操作桶(Bucket)和对象(Object)等OBS服务上的资源。

初始化方法

  1. func New(ak, sk, endpoint string, configurers ...configurer) (*ObsClient, error)

参数描述


字段名

类型

约束

说明

ak

string

必选

访问密钥中的AK。

sk

string

必选

访问密钥中的SK。

endpoint

string

必选

连接OBS的服务地址。包含协议类型、域名(或IP)、端口号。示例:https://your-endpoint:443。

configurers

configurer(obs包中的私有类型)

可选

一组用于配置ObsClient的参数,可进行连接超时时间、最大重试次数、最大连接数等配置。

可用的configurer


创建方式

说明

WithSslVerifyAndPemCerts(sslVerify bool, pemCerts []byte)

配置验证服务端证书的参数。默认为不验证。

WithHeaderTimeout(headerTimeout int)

配置获取响应头的超时时间。默认为60秒。

WithMaxConnections(maxConnsPerHost int)

配置允许打开的最大HTTP连接数。默认为1000。

WithConnectTimeout(connectTimeout int)

配置建立HTTP/HTTPS连接的超时时间(单位:秒)。默认为60秒。

WithSocketTimeout(socketTimeout int)

配置读写数据的超时时间(单位:秒)。默认为60秒。

WithIdleConnTimeout(idleConnTimeout int)

配置空闲的HTTP连接在连接池中的超时时间(单位:秒)。默认为30秒。

WithMaxRetryCount(maxRetryCount int)

配置HTTP/HTTPS连接异常时的请求重试次数。默认为3次。

WithProxyUrl(proxyUrl string)

配置HTTP代理。

WithHttpTransport(transport *http.Transport)

配置自定义的Transport。

WithRequestContext(ctx context.Context)

配置每次HTTP请求的上下文。

代码样例

  1. import (
  2. "obs"
  3. )
  4.  
  5. var ak = "*** Provide your Access Key ***"
  6. var sk = "*** Provide your Secret Key ***"
  7. var endpoint = "https://your-endpoint"
  8.  
  9. var obsClient, _ = obs.New(
  10. ak,
  11. sk,
  12. endpoint,
  13. obs.WithConnectTimeout(30),
  14. obs.WithSocketTimeout(60),
  15. obs.WithMaxConnections(100),
  16. obs.WithMaxRetryCount(3),
  17. )
  18.  
  19. func main() {
  20. obsClient.Close()
  21. }

父主题:初始化