Documentation
¶
Overview ¶
Package aliyun 提供阿里云 SDK 适配包内部共用的配置校验、凭据解析、HTTP 客户端构造和 Tea 结果日志分类。 不保存全局账号、客户端或注册表;每次构造的凭据和连接池独立。 服务包保留自己的公开 Config、默认值、SDK 适配、请求执行及关闭逻辑。 例如服务包的构造函数可依次校验参数、解析凭据并创建连接池:
if err := aliyun.ValidateConfig(name, region, endpoint, requestTimeout, slowThreshold); err != nil {
return err
}
credential, err := aliyun.ResolveCredential(accessKeyID, accessKeySecret, providedCredential)
if err != nil {
return err
}
httpClient, transport, err := aliyun.NewHTTPClient()
if err != nil {
return err
}
defer transport.CloseIdleConnections()
_ = credential
_ = httpClient
示例变量来自服务配置;实际服务构造成功后持有连接池,由自己的 Close 负责关闭。 注入凭据与任意 AK/SK 字段互斥,动态凭据不提前读取,所有构造函数均不联网。 配置错误由服务包补充前缀。ES 和 STS 通过 ClassifyTeaResult 提取结果日志所需的字段和级别, 各自输出日志并将 SDK 错误返回给调用方。
Index ¶
- func NewHTTPClient() (*http.Client, *http.Transport, error)
- func ResolveCredential(accessKeyID, accessKeySecret string, credential credentials.Credential) (credentials.Credential, error)
- func ValidateConfig(name, region, endpoint string, requestTimeout, slowThreshold time.Duration) error
- func ValidateEndpoint(endpoint string) error
- type TeaLogResult
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewHTTPClient ¶
NewHTTPClient 创建独立连接池,不联网或修改默认 Transport。 调用方负责关闭返回的 Transport;请求期限由各服务的 context 控制。
func ResolveCredential ¶
func ResolveCredential(accessKeyID, accessKeySecret string, credential credentials.Credential) (credentials.Credential, error)
ResolveCredential 返回注入凭据或构造独立的固定 AK/SK 凭据,两种来源互斥。 不联网、不提前获取动态凭据;注入对象仍由调用方持有。
func ValidateConfig ¶
func ValidateConfig(name, region, endpoint string, requestTimeout, slowThreshold time.Duration) error
ValidateConfig 校验服务共用的连接参数;默认值及服务特有参数由调用方处理。 错误不包含配置原值,由调用方补充服务包前缀。
func ValidateEndpoint ¶
ValidateEndpoint 校验可选的 HTTP(S) 地址,错误不包含地址原值。
Types ¶
type TeaLogResult ¶ added in v0.1.3
TeaLogResult 包含 ES 和 STS 写结果日志时使用的公共字段和级别。
func ClassifyTeaResult ¶ added in v0.1.3
func ClassifyTeaResult(status int, requestID string, err error, duration, slowThreshold time.Duration) TeaLogResult
ClassifyTeaResult 优先使用实际 HTTP 状态,仅从 Tea 错误中提取可记录的字段。