You need to enable JavaScript to run this app.
文档中心
文档控制台
注册
veImageX

veImageX

复制全文
下载 pdf
Golang SDK
服务管理
复制全文
下载 pdf
服务管理

阅读本文,您可以获取 Go SDK 服务管理的接口调用示例,实现快速开发。

说明

本文的调用示例包含接口的部分参数。由于参数间可能存在互斥关系,在调用时,请您参考注释,进行调整。

调用说明

  • 本文提供的接口调用示例均通过 AK 和 SK 初始化实例。
  • 接口的参数说明和错误码等信息可通过接口文档查看。

前提条件

调用接口前,请先完成 Go SDK 的安装及初始化操作。

调用示例

本节为您介绍服务管理相关接口的功能和调用示例。

查询服务开通状态

您可以调用 GetImageServiceSubscription 接口查询服务开通状态。详细的参数说明可参见 GetImageServiceSubscription 接口文档。

接口调用示例如下所示。

package main

import (
	"context"
	"fmt"
	"os"

	"github.com/volcengine/volc-sdk-golang/base"
	imagex "github.com/volcengine/volc-sdk-golang/service/imagex/v2"
)

func main() {
	// 强烈建议不要把 VOLC_ACCESSKEY 和 VOLC_SECRETKEY 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
	// 本示例通过从环境变量中读取 VOLC_ACCESSKEY 和 VOLC_SECRETKEY,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY
	service := imagex.NewInstance()
	service.SetCredential(base.Credentials{
		AccessKeyID:     os.Getenv("VOLC_ACCESSKEY"),
		SecretAccessKey: os.Getenv("VOLC_SECRETKEY"),
	})

	query := &imagex.GetImageServiceSubscriptionQuery{
		// 附加组件类型,取值AI获取服务端智能处理开通情况。默认返回ImageX服务开通情况
		AddOnType: "AI",
		// 附加组件ID,获取指定附加组件的开通情况。默认返回ImageX服务开通情况
		AddOnID: "xxxx",
		// 附加组件英文标识,获取指定附加组件的开通情况。默认返回ImageX服务开通情况。
		AddOnKey: "enhance",
	}

	resp, err := service.GetImageServiceSubscription(context.Background(), query)

	if err != nil {
		fmt.Printf("error %v", err)
	} else {
		fmt.Printf("success %+v", resp)
	}
}

创建服务

您可以调用 CreateImageService 接口创建服务。详细的参数说明可参见 CreateImageService 接口文档。

接口调用示例如下所示。

package main

import (
	"context"
	"fmt"
	"os"

	"github.com/volcengine/volc-sdk-golang/base"
	imagex "github.com/volcengine/volc-sdk-golang/service/imagex/v2"
)

func main() {
	// 强烈建议不要把 VOLC_ACCESSKEY 和 VOLC_SECRETKEY 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
	// 本示例通过从环境变量中读取 VOLC_ACCESSKEY 和 VOLC_SECRETKEY,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY
	service := imagex.NewInstance()
	service.SetCredential(base.Credentials{
		AccessKeyID:     os.Getenv("VOLC_ACCESSKEY"),
		SecretAccessKey: os.Getenv("VOLC_SECRETKEY"),
	})

	body := &imagex.CreateImageServiceBody{
		// 服务名称,最多不超过 32 个字符。创建成功后,名称和区域不支持变更。建议您使用能够标识业务的服务名。
		ServiceName: "图片处理",
		// 服务地域,取值如下所示:
		// * cn:中国
		// * mya:亚太东南(柔佛)
		ServiceRegion: "cn",
		// 服务类型,取值如下所示:
		// * StaticRc:素材托管服务,支持任意类型资源的存储和分发。
		// * Image:图片处理服务,除支持任意类型资源的存储和分发外,还支持对图片进行实时处理。
		ServiceType: "Image",
		// 服务绑定的项目,默认值为 default。项目是在火山引擎访问控制中资源分组的概念,您需要将服务加入某一个项目中。您可以在火山引擎控制台[项目管理](https://console.volcengine.com/iam/projcetmanage/)页面中获取项目名称。
		ProjectName: "default",
	}

	// 创建服务时需要绑定的域名列表,最多支持一次绑定 10 个域名。
	Domains1 := imagex.CreateImageServiceBodyDomainsItem{
		// 待绑定的已备案域名。
		Domain: "a.test.com",
		// 待绑定的证书 ID。
		CertID: "109jo**027y3",
	}

	body.Domains = append(body.Domains, &Domains1)

	// 服务绑定的标签,默认为空,表示不绑定标签。可用于通过标签将不同业务类别、用途的存储服务进行分类管理,也适用于标签制授权和标签分账等场景。您可以在火山引擎控制台[资源管理](https://console.volcengine.com/resourcemanager/tag/resource_tag)页面新建标签。
	ResourceTags1 := imagex.CreateImageServiceBodyResourceTagsItem{
		// 标签键
		Key: "userkey",
		// 标签值
		Value: "uservalue",
	}

	body.ResourceTags = append(body.ResourceTags, &ResourceTags1)

	resp, err := service.CreateImageService(context.Background(), body)

	if err != nil {
		fmt.Printf("error %v", err)
	} else {
		fmt.Printf("success %+v", resp)
	}
}

删除服务

您可以调用 DeleteImageService 接口删除服务。详细的参数说明可参见 DeleteImageService 接口文档。

接口调用示例如下所示。

package main

import (
	"context"
	"fmt"
	"os"

	"github.com/volcengine/volc-sdk-golang/base"
	imagex "github.com/volcengine/volc-sdk-golang/service/imagex/v2"
)

func main() {
	// 强烈建议不要把 VOLC_ACCESSKEY 和 VOLC_SECRETKEY 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
	// 本示例通过从环境变量中读取 VOLC_ACCESSKEY 和 VOLC_SECRETKEY,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY
	service := imagex.NewInstance()
	service.SetCredential(base.Credentials{
		AccessKeyID:     os.Getenv("VOLC_ACCESSKEY"),
		SecretAccessKey: os.Getenv("VOLC_SECRETKEY"),
	})

	query := &imagex.DeleteImageServiceQuery{
		// 待删除的服务 ID。
		// <li> 您可以在 veImageX 控制台 [服务管理](https://console.volcengine.com/imagex/service_manage/)页面,在创建好的图片服务中获取服务 ID。 </li>
		// <li> 您也可以通过 OpenAPI 的方式获取服务 ID,具体请参考[获取所有服务信息](https://www.volcengine.com/docs/508/9360)。 </li>
		ServiceID: "g9y**8hu",
	}

	resp, err := service.DeleteImageService(context.Background(), query)

	if err != nil {
		fmt.Printf("error %v", err)
	} else {
		fmt.Printf("success %+v", resp)
	}
}

更新服务名称

您可以调用 UpdateServiceName 接口更新服务名称。详细的参数说明可参见 UpdateServiceName 接口文档。

接口调用示例如下所示。

package main

import (
	"context"
	"fmt"
	"os"

	"github.com/volcengine/volc-sdk-golang/base"
	imagex "github.com/volcengine/volc-sdk-golang/service/imagex/v2"
)

func main() {
	// 强烈建议不要把 VOLC_ACCESSKEY 和 VOLC_SECRETKEY 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
	// 本示例通过从环境变量中读取 VOLC_ACCESSKEY 和 VOLC_SECRETKEY,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY
	service := imagex.NewInstance()
	service.SetCredential(base.Credentials{
		AccessKeyID:     os.Getenv("VOLC_ACCESSKEY"),
		SecretAccessKey: os.Getenv("VOLC_SECRETKEY"),
	})

	query := &imagex.UpdateServiceNameQuery{
		// 待修改名称的服务 ID。
		// * 您可以在 veImageX 控制台[服务管理](https://console.volcengine.com/imagex/service_manage/)页面,在创建好的图片服务中获取服务 ID。
		// * 您也可以通过 OpenAPI 的方式获取服务 ID,具体请参考[获取所有服务信息](https://www.volcengine.com/docs/508/9360)。
		ServiceID: "uh1**89i",
	}

	body := &imagex.UpdateServiceNameBody{
		// 服务名称,最多不超过 32 个字符。
		ServiceName: "新服务",
	}

	requestParam := &imagex.UpdateServiceNameReq{}

	requestParam.UpdateServiceNameQuery = query
	requestParam.UpdateServiceNameBody = body

	resp, err := service.UpdateServiceName(context.Background(), requestParam)

	if err != nil {
		fmt.Printf("error %v", err)
	} else {
		fmt.Printf("success %+v", resp)
	}
}

更新镜像回源配置

您可以调用 UpdateImageMirrorConf 接口更新镜像回源配置。详细的参数说明可参见 UpdateImageMirrorConf 接口文档。

接口调用示例如下所示。

package main

import (
	"context"
	"fmt"
	"os"

	"github.com/volcengine/volc-sdk-golang/base"
	imagex "github.com/volcengine/volc-sdk-golang/service/imagex/v2"
)

func main() {
	// 强烈建议不要把 VOLC_ACCESSKEY 和 VOLC_SECRETKEY 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
	// 本示例通过从环境变量中读取 VOLC_ACCESSKEY 和 VOLC_SECRETKEY,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY
	service := imagex.NewInstance()
	service.SetCredential(base.Credentials{
		AccessKeyID:     os.Getenv("VOLC_ACCESSKEY"),
		SecretAccessKey: os.Getenv("VOLC_SECRETKEY"),
	})

	query := &imagex.UpdateImageMirrorConfQuery{
		// 服务 ID。
		// <li> 您可以在 veImageX 控制台 [服务管理](https://console.volcengine.com/imagex/service_manage/)页面,在创建好的图片服务中获取服务 ID。 </li>
		// <li> 您也可以通过 OpenAPI 的方式获取服务 ID,具体请参考[获取所有服务信息](https://www.volcengine.com/docs/508/9360)。 </li>
		ServiceID: "8h**9q",
	}

	body := &imagex.UpdateImageMirrorConfBody{
		// 下载图片的协议,取值为:http、https。
		Schema: "https",
		// 镜像源 URI,其中图片名用 %s 占位符替代,比如/obj/%s。
		Source: "/obj/%s",
	}

	// 带权重回源域名。key 为 String 类型,代表镜像回源域名;value 为 Integer 类型,代表域名权重。
	Hosts := map[string]int{
		"www.pic1.com": 95,
		"www.pic2.com": 5,
	}

	body.Hosts = Hosts

	// 镜像站
	Origin := imagex.UpdateImageMirrorConfBodyOrigin{}

	body.Origin = &Origin

	requestParam := &imagex.UpdateImageMirrorConfReq{}

	requestParam.UpdateImageMirrorConfQuery = query
	requestParam.UpdateImageMirrorConfBody = body

	resp, err := service.UpdateImageMirrorConf(context.Background(), requestParam)

	if err != nil {
		fmt.Printf("error %v", err)
	} else {
		fmt.Printf("success %+v", resp)
	}
}

更新重名覆盖上传配置

您可以调用 UpdateImageUploadOverwrite 接口更新重名覆盖上传配置。详细的参数说明可参见 UpdateImageUploadOverwrite 接口文档。

接口调用示例如下所示。

package main

import (
	"context"
	"fmt"
	"os"

	"github.com/volcengine/volc-sdk-golang/base"
	imagex "github.com/volcengine/volc-sdk-golang/service/imagex/v2"
)

func main() {
	// 强烈建议不要把 VOLC_ACCESSKEY 和 VOLC_SECRETKEY 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
	// 本示例通过从环境变量中读取 VOLC_ACCESSKEY 和 VOLC_SECRETKEY,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY
	service := imagex.NewInstance()
	service.SetCredential(base.Credentials{
		AccessKeyID:     os.Getenv("VOLC_ACCESSKEY"),
		SecretAccessKey: os.Getenv("VOLC_SECRETKEY"),
	})

	query := &imagex.UpdateImageUploadOverwriteQuery{
		// 服务 ID。
		// <li> 您可以在 veImageX 控制台 [服务管理](https://console.volcengine.com/imagex/service_manage/)页面,在创建好的图片服务中获取服务 ID。 </li>
		// <li> 您也可以通过 OpenAPI 的方式获取服务 ID,具体请参考[GetAllImageServices](https://www.volcengine.com/docs/508/9360)。 </li>
		ServiceID: "7f****3",
	}

	body := &imagex.UpdateImageUploadOverwriteBody{
		// 是否开启重名覆盖上传,取值如下所示:
		// <li> true:开启 </li>
		// <li> false:关闭 </li>
		UploadOverwrite: true,
	}

	requestParam := &imagex.UpdateImageUploadOverwriteReq{}

	requestParam.UpdateImageUploadOverwriteQuery = query
	requestParam.UpdateImageUploadOverwriteBody = body

	resp, err := service.UpdateImageUploadOverwrite(context.Background(), requestParam)

	if err != nil {
		fmt.Printf("error %v", err)
	} else {
		fmt.Printf("success %+v", resp)
	}
}

更新服务存储策略

您可以调用 UpdateStorageRules 接口更新服务存储策略。详细的参数说明可参见 UpdateStorageRules 接口文档。

接口调用示例如下所示。

package main

import (
	"context"
	"fmt"
	"os"

	"github.com/volcengine/volc-sdk-golang/base"
	imagex "github.com/volcengine/volc-sdk-golang/service/imagex/v2"
)

func main() {
	// 强烈建议不要把 VOLC_ACCESSKEY 和 VOLC_SECRETKEY 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
	// 本示例通过从环境变量中读取 VOLC_ACCESSKEY 和 VOLC_SECRETKEY,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY
	service := imagex.NewInstance()
	service.SetCredential(base.Credentials{
		AccessKeyID:     os.Getenv("VOLC_ACCESSKEY"),
		SecretAccessKey: os.Getenv("VOLC_SECRETKEY"),
	})

	query := &imagex.UpdateStorageRulesQuery{
		// 服务 ID。
		// <li> 您可以在 veImageX 控制台 [服务管理](https://console.volcengine.com/imagex/service_manage/)页面,在创建好的图片服务中获取服务 ID。 </li>
		// <li> 您也可以通过 OpenAPI 的方式获取服务 ID,具体请参考[获取所有服务信息](https://www.volcengine.com/docs/508/9360)。 </li>
		ServiceID: "7s**0l",
	}

	body := &imagex.UpdateStorageRulesBody{}

	// 更新后的存储降冷策略
	StorageRules1 := imagex.UpdateStorageRulesBodyStorageRulesItem{
		// 文件前缀。例如设置为 prefix 后,规则将只对名称以 prefix 开头的存储资源生效。输入规则如下:
		// <li> 不能以正斜线(/)或者反斜线()开头; </li>
		// <li> 不支持使用正则表达式匹配前缀; </li>
		// <li> 长度为 1~1024 个字符。 </li>
		Prefix: "prefix",
		// 策略类型,固定取值 Upload,表示按上传时间。
		Event: "upload",
		// 最新版本文件的策略天数,取值范围为 [1,365],单位为天。按照 Event 事件 Day 天后执行 Action 事件,即当匹配文件的上传时间符合指定天数后,自动按照处理策略对资源进行处理。
		Day: 30,
		// 最新版本文件在策略命中后需要执行的操作,取值如下所示:
		// <li> DELETE:删除文件 </li>
		// <li> IA:文件转低频存储 </li>
		// <li> ARCHIVE:文件转归档存储 </li>
		// <li> COLD_ARCHIVE:文件转冷归档存储 </li>
		Action: "IA",
		// 是否启用策略,取值如下所示:
		// <li> true:是 </li>
		// <li> false:否 </li>
		Enable: true,
		// 历史版本文件在策略命中后需要执行的操作,取值如下所示:
		// <li> DELETE:删除文件 </li>
		// <li> IA:文件转低频存储 </li>
		// <li> ARCHIVE:文件转归档存储 </li>
		// <li> COLD_ARCHIVE:文件转冷归档存储 </li>
		NonCurrentAction: "IA",
		// 历史版本文件的策略天数,取值范围为 [1,365],单位为天。按照 Event 事件 NonCurrentDay 天后执行 NonCurrentAction 事件,即当匹配历史版本文件的上传时间符合指定天数后,自动按照处理策略对历史版本资源进行处理。
		NonCurrentDay: 30,
	}

	body.StorageRules = append(body.StorageRules, &StorageRules1)
	requestParam := &imagex.UpdateStorageRulesReq{}

	requestParam.UpdateStorageRulesQuery = query
	requestParam.UpdateStorageRulesBody = body

	resp, err := service.UpdateStorageRules(context.Background(), requestParam)

	if err != nil {
		fmt.Printf("error %v", err)
	} else {
		fmt.Printf("success %+v", resp)
	}
}

更新事件通知配置

您可以调用 UpdateResEventRule 接口更新事件通知配置。详细的参数说明可参见 UpdateResEventRule 接口文档。

接口调用示例如下所示。

package main

import (
	"context"
	"fmt"
	"os"

	"github.com/volcengine/volc-sdk-golang/base"
	imagex "github.com/volcengine/volc-sdk-golang/service/imagex/v2"
)

func main() {
	// 强烈建议不要把 VOLC_ACCESSKEY 和 VOLC_SECRETKEY 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
	// 本示例通过从环境变量中读取 VOLC_ACCESSKEY 和 VOLC_SECRETKEY,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY
	service := imagex.NewInstance()
	service.SetCredential(base.Credentials{
		AccessKeyID:     os.Getenv("VOLC_ACCESSKEY"),
		SecretAccessKey: os.Getenv("VOLC_SECRETKEY"),
	})

	query := &imagex.UpdateResEventRuleQuery{
		// 服务 ID。
		// <li> 您可以在 veImageX 控制台 [服务管理](https://console.volcengine.com/imagex/service_manage/)页面,在创建好的图片服务中获取服务 ID。 </li>
		// <li> 您也可以通过 OpenAPI 的方式获取服务 ID,具体请参考[获取所有服务信息](https://www.volcengine.com/docs/508/9360)。 </li>
		ServiceID: "hj9**102",
	}

	body := &imagex.UpdateResEventRuleBody{}

	// 事件通知规则
	EventRules1 := imagex.UpdateResEventRuleBodyEventRulesItem{
		// 匹配规则的正则表达式。仅当资源的 StoreKey 匹配该正则表达式时触发事件通知。缺省情况下表示匹配所有资源。
		MatchRule: "test.png\b",
		// 回调 URL,以 http:// 或 https:// 开头,需满足公网可访问。当事件触发时,会向该 URL 发送 HTTP POST 请求,body 为具体的事件信息。具体回调参数详见回调内容。
		CallbackURL: "https://a.callback.com",
		// 规则启用状态,取值如下所示:
		// <li> true:开启 </li>
		// <li> false:关闭 </li>
		Enable: true,
	}

	// 事件类型。取值如下所示:
	// <li> Upload:上传文件 </li>
	// <li> Delete:删除文件 </li>
	// <li> Mirror:镜像回源 </li>
	// <li> Migrate:数据迁移 </li>
	// <li> OffTrans:离线转码(素材托管服务配置无效) </li>
	// <li> TplStore:模板持久化存储(素材托管服务配置无效) </li>
	EventType := []string{"upload"}

	EventRules1.EventType = EventType

	body.EventRules = append(body.EventRules, &EventRules1)
	requestParam := &imagex.UpdateResEventRuleReq{}

	requestParam.UpdateResEventRuleQuery = query
	requestParam.UpdateResEventRuleBody = body

	resp, err := service.UpdateResEventRule(context.Background(), requestParam)

	if err != nil {
		fmt.Printf("error %v", err)
	} else {
		fmt.Printf("success %+v", resp)
	}
}

更新源地址访问配置

您可以调用 UpdateImageObjectAccess 接口更新源地址访问配置。详细的参数说明可参见 UpdateImageObjectAccess 接口文档。

接口调用示例如下所示。

package main

import (
	"context"
	"fmt"
	"os"

	"github.com/volcengine/volc-sdk-golang/base"
	imagex "github.com/volcengine/volc-sdk-golang/service/imagex/v2"
)

func main() {
	// 强烈建议不要把 VOLC_ACCESSKEY 和 VOLC_SECRETKEY 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
	// 本示例通过从环境变量中读取 VOLC_ACCESSKEY 和 VOLC_SECRETKEY,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY
	service := imagex.NewInstance()
	service.SetCredential(base.Credentials{
		AccessKeyID:     os.Getenv("VOLC_ACCESSKEY"),
		SecretAccessKey: os.Getenv("VOLC_SECRETKEY"),
	})

	query := &imagex.UpdateImageObjectAccessQuery{
		// 待更新配置的服务 ID。
		// <li> 您可以在 veImageX 控制台[服务管理](https://console.volcengine.com/imagex/service_manage/)页面,在创建好的图片服务中获取服务 ID。 </li>
		// <li> 您也可以通过 OpenAPI 的方式获取服务 ID,具体请参考[获取所有服务信息](https://www.volcengine.com/docs/508/9360)。 </li>
		ServiceID: "9jh**b2d",
	}

	body := &imagex.UpdateImageObjectAccessBody{
		// 是否开启源地址访问,取值如下所示:
		// * true:开启源地址访问
		// * false:关闭源地址访问
		ObjectAccess: false,
	}

	requestParam := &imagex.UpdateImageObjectAccessReq{}

	requestParam.UpdateImageObjectAccessQuery = query
	requestParam.UpdateImageObjectAccessBody = body

	resp, err := service.UpdateImageObjectAccess(context.Background(), requestParam)

	if err != nil {
		fmt.Printf("error %v", err)
	} else {
		fmt.Printf("success %+v", resp)
	}
}

更新主备鉴权

您可以调用 UpdateImageAuthKey 接口更新主备鉴权。详细的参数说明可参见 UpdateImageAuthKey 接口文档。

接口调用示例如下所示。

package main

import (
	"context"
	"fmt"
	"os"

	"github.com/volcengine/volc-sdk-golang/base"
	imagex "github.com/volcengine/volc-sdk-golang/service/imagex/v2"
)

func main() {
	// 强烈建议不要把 VOLC_ACCESSKEY 和 VOLC_SECRETKEY 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
	// 本示例通过从环境变量中读取 VOLC_ACCESSKEY 和 VOLC_SECRETKEY,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY
	service := imagex.NewInstance()
	service.SetCredential(base.Credentials{
		AccessKeyID:     os.Getenv("VOLC_ACCESSKEY"),
		SecretAccessKey: os.Getenv("VOLC_SECRETKEY"),
	})

	query := &imagex.UpdateImageAuthKeyQuery{
		// 待更新配置的服务 ID。
		// <li> 您可以在 veImageX 控制台[服务管理](https://console.volcengine.com/imagex/service_manage/)页面,在创建好的图片服务中获取服务 ID。 </li>
		// <li> 您也可以通过 OpenAPI 的方式获取服务 ID,具体请参考[获取所有服务信息](https://www.volcengine.com/docs/508/9360)。 </li>
		ServiceID: "2y***s2",
	}

	body := &imagex.UpdateImageAuthKeyBody{
		// 主鉴权 key,长度为 8-32 字节,为空则不更新主鉴权值。
		PrimaryKey: "899z09z***121u2e9w",
		// 备鉴权 key,长度为 8-32 字节,为空则不更新备鉴权值。
		SecondaryKey: "030fwe8***j9wqhiqs",
	}

	requestParam := &imagex.UpdateImageAuthKeyReq{}

	requestParam.UpdateImageAuthKeyQuery = query
	requestParam.UpdateImageAuthKeyBody = body

	resp, err := service.UpdateImageAuthKey(context.Background(), requestParam)

	if err != nil {
		fmt.Printf("error %v", err)
	} else {
		fmt.Printf("success %+v", resp)
	}
}

获取主备鉴权

您可以调用 GetImageAuthKey 接口获取主备鉴权。详细的参数说明可参见 GetImageAuthKey 接口文档。

接口调用示例如下所示。

package main

import (
	"context"
	"fmt"
	"os"

	"github.com/volcengine/volc-sdk-golang/base"
	imagex "github.com/volcengine/volc-sdk-golang/service/imagex/v2"
)

func main() {
	// 强烈建议不要把 VOLC_ACCESSKEY 和 VOLC_SECRETKEY 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
	// 本示例通过从环境变量中读取 VOLC_ACCESSKEY 和 VOLC_SECRETKEY,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY
	service := imagex.NewInstance()
	service.SetCredential(base.Credentials{
		AccessKeyID:     os.Getenv("VOLC_ACCESSKEY"),
		SecretAccessKey: os.Getenv("VOLC_SECRETKEY"),
	})

	query := &imagex.GetImageAuthKeyQuery{
		// 服务 ID。
		// <li> 您可以在 veImageX 控制台[服务管理](https://console.volcengine.com/imagex/service_manage/)页面,在创建好的图片服务中获取服务 ID。 </li>
		// <li> 您也可以通过 OpenAPI 的方式获取服务 ID,具体请参考[获取所有服务信息](https://www.volcengine.com/docs/508/9360)。 </li>
		ServiceID: "y7****w7",
	}

	resp, err := service.GetImageAuthKey(context.Background(), query)

	if err != nil {
		fmt.Printf("error %v", err)
	} else {
		fmt.Printf("success %+v", resp)
	}
}

获取单个服务信息

您可以调用 GetImageService 接口获取单个服务信息。详细的参数说明可参见 GetImageService 接口文档。

接口调用示例如下所示。

package main

import (
	"context"
	"fmt"
	"os"

	"github.com/volcengine/volc-sdk-golang/base"
	imagex "github.com/volcengine/volc-sdk-golang/service/imagex/v2"
)

func main() {
	// 强烈建议不要把 VOLC_ACCESSKEY 和 VOLC_SECRETKEY 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
	// 本示例通过从环境变量中读取 VOLC_ACCESSKEY 和 VOLC_SECRETKEY,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY
	service := imagex.NewInstance()
	service.SetCredential(base.Credentials{
		AccessKeyID:     os.Getenv("VOLC_ACCESSKEY"),
		SecretAccessKey: os.Getenv("VOLC_SECRETKEY"),
	})

	query := &imagex.GetImageServiceQuery{
		// 服务 ID。
		// <li> 您可以在 veImageX 控制台 [服务管理](https://console.volcengine.com/imagex/service_manage/)页面,在创建好的图片服务中获取服务 ID。 </li>
		// <li> 您也可以通过 OpenAPI 的方式获取服务 ID,具体请参考[获取所有服务信息](https://www.volcengine.com/docs/508/9360)。 </li>
		ServiceID: "90**1h",
	}

	resp, err := service.GetImageService(context.Background(), query)

	if err != nil {
		fmt.Printf("error %v", err)
	} else {
		fmt.Printf("success %+v", resp)
	}
}

获取所有服务信息

您可以调用 GetAllImageServices 接口获取所有服务信息。详细的参数说明可参见 GetAllImageServices 接口文档。

接口调用示例如下所示。

package main

import (
	"context"
	"fmt"
	"os"

	"github.com/volcengine/volc-sdk-golang/base"
	imagex "github.com/volcengine/volc-sdk-golang/service/imagex/v2"
)

func main() {
	// 强烈建议不要把 VOLC_ACCESSKEY 和 VOLC_SECRETKEY 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
	// 本示例通过从环境变量中读取 VOLC_ACCESSKEY 和 VOLC_SECRETKEY,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY
	service := imagex.NewInstance()
	service.SetCredential(base.Credentials{
		AccessKeyID:     os.Getenv("VOLC_ACCESSKEY"),
		SecretAccessKey: os.Getenv("VOLC_SECRETKEY"),
	})

	query := &imagex.GetAllImageServicesQuery{
		// 筛选服务的参数,当该值为空时返回所有服务,指定后返回服务名或者 ID 中包含该字符串的服务。
		SearchPtn: "test",
	}

	resp, err := service.GetAllImageServices(context.Background(), query)

	if err != nil {
		fmt.Printf("error %v", err)
	} else {
		fmt.Printf("success %+v", resp)
	}
}

最近更新时间:2025.12.17 14:32:54
这个页面对您有帮助吗?
有用
有用
无用
无用