本文档介绍如何使用 火山引擎 Go SDK 调用火山引擎云解析(DNS)的 API。
使用以下命令获取火山引擎 Go SDK。您需要根据您的 Go 版本选择不同的命令。
# Go 1.17 或更低版本 go get -u github.com/volcengine/volcengine-go-sdk
# Go 1.18 或更高版本 go install github.com/volcengine/volcengine-go-sdk@latest
本文以ListZones API 为例,演示调用流程。
ak: 您的 Access Key ID 。sk: 您的 Secret Access Key。region:地域,默认为cn-beijing。volcengine.NewConfig()初始化配置,并设置地域和凭证。session.NewSession() 创建一个共享会话,用于后续服务客户端初始化。dns.New() 创建云解析(DNS)客户端实例。实现步骤的示例代码如下:
// Example Code generated by Beijing Volcanoengine Technology. package main import ( "github.com/volcengine/volcengine-go-sdk/service/dns" "github.com/volcengine/volcengine-go-sdk/volcengine" "github.com/volcengine/volcengine-go-sdk/volcengine/credentials" "github.com/volcengine/volcengine-go-sdk/volcengine/session" ) func main() { // 注意示例代码安全,代码泄漏会导致AK/SK泄漏,有极大的安全风险。 ak, sk, region := "Your AK", "Your SK", "cn-beijing" config := volcengine.NewConfig(). WithRegion(region). WithCredentials(credentials.NewStaticCredentials(ak, sk, "")) sess, err := session.NewSession(config) if err != nil { panic(err) } svc := dns.New(sess) reqTagFilters := &dns.TagFilterForListZonesInput{ Key: volcengine.String("k1"), Values: volcengine.StringSlice([]string{"v1"}), } listZonesInput := &dns.ListZonesInput{ TagFilters: []*dns.TagFilterForListZonesInput{reqTagFilters}, } // 复制代码运行示例,请自行打印API返回值。 _, err = svc.ListZones(listZonesInput) if err != nil { // 复制代码运行示例,请自行打印API错误信息。 panic(err) } }