全部文档
当前文档

暂无内容

如果没有找到您期望的内容,请尝试其他搜索词

文档中心

Go使用指南

最近更新时间:2025-11-28 17:37:31

CDN SDK For Go使用指南

简介

欢迎使用金山云开发者工具套件(SDK),此SDK是金山云API平台的配套开发工具。

依赖环境

  1. Go 1.17 版本及以上。

  2. 在金山云控制台页面获取密钥 AccessKey 和 SecretKey,请务必妥善保管,或者使用更安全的临时安全凭证。

Config 配置

申请安全凭证:

  • 在第一次使用金山云API之前,用户首先需要在金山云控制台IAM服务申请安全凭证,安全凭证包括access_key_idsecret_access_key,access_key_id是用于标识API调用者的身份,secret_access_key是用于加密签名字符串和服务器端验证签名字符串的密钥。

  • secret_access_key必须严格保管,避免泄露。

Install 安装

获取安装

注意:此安装方式仅支持使用 Go Modules 模式进行依赖管理,即环境变量 GO111MODULE=auto或者GO111MODULE=on, 并且在您的项目中执行了 go mod init xxx.

如果您使用 GOPATH, 请参考下节:

安装SDK包:

```bash
go get -v -u github.com/kingsoftcloud/sdk-go/v2/ksyun/common
```

通过源码安装

前往代码托管地址 Github 下载最新代码,解压后安装到项目目录下。

Examples 示例

每个接口都有一个对应的 Request 结构和一个 Response 结构。例如访问控制中查询子用户列表接口ListUsers, 有对应的请求结构体ListUsersRequest 和返回结构体 ListUsersResponse 。

下面以访问控制查询子用户列表接口为例,介绍 SDK 的基础用法。

package main

import (
	"fmt"
	"github.com/kingsoftcloud/sdk-go/ksyun/common"
	"github.com/kingsoftcloud/sdk-go/ksyun/common/errors"
	"github.com/kingsoftcloud/sdk-go/ksyun/common/profile"
	iam "github.com/kingsoftcloud/sdk-go/ksyun/iam/v20151101"
)

func main() {
	credential := common.NewCredential("AccessKey", "SecretKey")

	cpf := profile.NewClientProfile()
	cpf.HttpProfile.ReqMethod = "POST"
	//设置超时时间  可不设置
	cpf.HttpProfile.ReqTimeout = 10
	//请求域名
	cpf.HttpProfile.Endpoint = "iam.api.ksyun.com"
	client, _ := iam.NewClient(credential, "cn-beijing-6", cpf)

	request := iam.NewListUsersRequest()
	responseStruct, err := client.ListUsersSend(request)
	if err != nil {
		fmt.Printf("%s\n", err)
		return
	}
	fmt.Printf("%s\n", responseStruct.ToJsonString())

相关配置

如无特殊需要,建议您使用默认配置。

在创建客户端前,如有需要,您可以通过修改profile.ClientProfile中字段的值进行一些配置。

// 【非必需】 实例化一个客户端配置对象,可以指定超时时间等配置
cpf := profile.NewClientProfile()

具体的配置项说明如下:

请求方式

SDK默认使用POST方法。 如果你一定要使用GET方法,可以在这里设置。GET方法无法处理一些较大的请求

cpf.HttpProfile.ReqMethod = "POST"

超时时间

SDK有默认的超时时间,如非必要请不要修改默认设置。 如有需要请在核实后获取最新的默认值并进行代码配置,单位(秒)。

cpf.HttpProfile.ReqTimeout = 10

指定域名

SDK会自动指定域名。通常是不需要代码指定域名,但是如果你访问的域名需要特殊指定,则进行代码配置

cpf.HttpProfile.Endpoint = "iam.api.ksyun.com"

签名方式

SDK默认用 HMAC-SHA256 进行签名,它更安全但是会轻微降低性能。

cpf.SignMethod = "HMAC-SHA256"

DEBUG模式

DEBUG模式会打印更详细的日志,当您需要进行详细的排查错误时可以开启。
默认为 false

cpf.Debug = true

更多示例

参见金山云控制台-API Explorer-对应服务-SDK示例:CDN-OpenAPI

文档导读
纯净模式常规模式

纯净模式

点击可全屏预览文档内容
文档反馈