You need to enable JavaScript to run this app.
导航
服务管理
最近更新时间:2024.08.12 15:33:25首次发布时间:2024.06.04 15:40:33

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

说明

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

调用说明

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

前提条件

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

调用示例

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

创建服务

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

接口调用示例如下所示。

import { imagex } from "@volcengine/openapi";

export async function CreateImageServiceDemo() {
  try {
    const imagexService = new imagex.ImagexService({
      // 强烈建议不要把 VOLC_ACCESSKEY 和 VOLC_SECRETKEY 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
      // 本示例通过从环境变量中读取 VOLC_ACCESSKEY 和 VOLC_SECRETKEY,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY
      accessKeyId: process.env.VOLC_ACCESSKEY,
      secretKey: process.env.VOLC_SECRETKEY,
    });

    const requestParam = {
      // 服务名称,最多不超过 32 个字符。创建成功后,名称和区域不支持变更。建议您使用能够标识业务的服务名。
      ServiceName: "图片处理",
      // 服务地域,取值如下所示:
      // * cn:中国
      // * sg:新加坡
      ServiceRegion: "cn",
      // 服务类型,取值如下所示:
      // * StaticRc:素材托管服务,支持任意类型资源的存储和分发。
      // * Image:图片处理服务,除支持任意类型资源的存储和分发外,还支持对图片进行实时处理。
      ServiceType: "Image",
      // 创建服务时需要绑定的域名列表,最多支持一次绑定 10 个域名。
      Domains: [
        {
          // 待绑定的已备案域名。
          Domain: "a.test.com",
          // 待绑定的证书 ID。
          CertID: "109jo**027y3",
        },
      ],
      // 服务绑定的项目,默认值为 default。项目是在火山引擎访问控制中资源分组的概念,您需要将服务加入某一个项目中。您可以在火山引擎控制台[项目管理](https://console.volcengine.com/iam/projcetmanage/)页面中获取项目名称。
      ProjectName: "default",
      // 服务绑定的标签,默认为空,表示不绑定标签。可用于通过标签将不同业务类别、用途的存储服务进行分类管理,也适用于标签制授权和标签分账等场景。您可以在火山引擎控制台[资源管理](https://console.volcengine.com/resourcemanager/tag/resource_tag)页面新建标签。
      ResourceTags: [
        {
          // 标签键
          Key: "userkey",
          Value: "uservalue",
        },
      ],
    };

    const res = await imagexService.CreateImageService(requestParam);
    console.log("res", res);
  } catch (err) {
    console.error(err);
  }
}

删除服务

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

接口调用示例如下所示。

import { imagex } from "@volcengine/openapi";

export async function DeleteImageServiceDemo() {
  try {
    const imagexService = new imagex.ImagexService({
      // 强烈建议不要把 VOLC_ACCESSKEY 和 VOLC_SECRETKEY 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
      // 本示例通过从环境变量中读取 VOLC_ACCESSKEY 和 VOLC_SECRETKEY,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY
      accessKeyId: process.env.VOLC_ACCESSKEY,
      secretKey: process.env.VOLC_SECRETKEY,
    });

    const requestParam = {
      // 待删除的服务 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",
    };

    const res = await imagexService.DeleteImageService(requestParam);
    console.log("res", res);
  } catch (err) {
    console.error(err);
  }
}

更新服务名称

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

接口调用示例如下所示。

import { imagex } from "@volcengine/openapi";

export async function UpdateServiceNameDemo() {
  try {
    const imagexService = new imagex.ImagexService({
      // 强烈建议不要把 VOLC_ACCESSKEY 和 VOLC_SECRETKEY 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
      // 本示例通过从环境变量中读取 VOLC_ACCESSKEY 和 VOLC_SECRETKEY,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY
      accessKeyId: process.env.VOLC_ACCESSKEY,
      secretKey: process.env.VOLC_SECRETKEY,
    });

    const requestParam = {
      // 待修改名称的服务 ID。
      // * 您可以在 veImageX 控制台[服务管理](https://console.volcengine.com/imagex/service_manage/)页面,在创建好的图片服务中获取服务 ID。
      // * 您也可以通过 OpenAPI 的方式获取服务 ID,具体请参考[获取所有服务信息](https://www.volcengine.com/docs/508/9360)。
      ServiceId: "uh1**89i",
      // 服务名称,最多不超过 32 个字符。
      ServiceName: "新服务",
    };

    const res = await imagexService.UpdateServiceName(requestParam);
    console.log("res", res);
  } catch (err) {
    console.error(err);
  }
}

更新镜像回源配置

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

接口调用示例如下所示。

import { imagex } from "@volcengine/openapi";

export async function UpdateImageMirrorConfDemo() {
  try {
    const imagexService = new imagex.ImagexService({
      // 强烈建议不要把 VOLC_ACCESSKEY 和 VOLC_SECRETKEY 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
      // 本示例通过从环境变量中读取 VOLC_ACCESSKEY 和 VOLC_SECRETKEY,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY
      accessKeyId: process.env.VOLC_ACCESSKEY,
      secretKey: process.env.VOLC_SECRETKEY,
    });

    const requestParam = {
      // 服务 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",
      // 下载图片的协议,取值为:http、https。
      Schema: "https",
      // 带权重回源域名。key 为 String 类型,代表镜像回源域名;value 为 Integer 类型,代表域名权重。
      Hosts: {
        "www.pic1.com": 95,
        "www.pic2.com": 5,
      },
      // 镜像源 URI,其中图片名用 %s 占位符替代,比如/obj/%s。
      Source: "/obj/%s",
      // 镜像站
      Origin: {},
    };

    const res = await imagexService.UpdateImageMirrorConf(requestParam);
    console.log("res", res);
  } catch (err) {
    console.error(err);
  }
}

更新源地址访问配置

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

接口调用示例如下所示。

import { imagex } from "@volcengine/openapi";

export async function UpdateImageObjectAccessDemo() {
  try {
    const imagexService = new imagex.ImagexService({
      // 强烈建议不要把 VOLC_ACCESSKEY 和 VOLC_SECRETKEY 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
      // 本示例通过从环境变量中读取 VOLC_ACCESSKEY 和 VOLC_SECRETKEY,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY
      accessKeyId: process.env.VOLC_ACCESSKEY,
      secretKey: process.env.VOLC_SECRETKEY,
    });

    const requestParam = {
      // 待更新配置的服务 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",
      // 是否开启源地址访问,取值如下所示:
      // * true:开启源地址访问
      // * false:关闭源地址访问
      ObjectAccess: false,
    };

    const res = await imagexService.UpdateImageObjectAccess(requestParam);
    console.log("res", res);
  } catch (err) {
    console.error(err);
  }
}

更新主备鉴权 Key

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

接口调用示例如下所示。

import { imagex } from "@volcengine/openapi";

export async function UpdateImageAuthKeyDemo() {
  try {
    const imagexService = new imagex.ImagexService({
      // 强烈建议不要把 VOLC_ACCESSKEY 和 VOLC_SECRETKEY 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
      // 本示例通过从环境变量中读取 VOLC_ACCESSKEY 和 VOLC_SECRETKEY,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY
      accessKeyId: process.env.VOLC_ACCESSKEY,
      secretKey: process.env.VOLC_SECRETKEY,
    });

    const requestParam = {
      // 待更新配置的服务 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",
      // 主鉴权 key,长度为 8-32 字节,为空则不更新主鉴权值。
      PrimaryKey: "899z09z***121u2e9w",
      // 备鉴权 key,长度为 8-32 字节,为空则不更新备鉴权值。
      SecondaryKey: "030fwe8***j9wqhiqs",
    };

    const res = await imagexService.UpdateImageAuthKey(requestParam);
    console.log("res", res);
  } catch (err) {
    console.error(err);
  }
}

获取主备鉴权 Key

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

接口调用示例如下所示。

import { imagex } from "@volcengine/openapi";

export async function GetImageAuthKeyDemo() {
  try {
    const imagexService = new imagex.ImagexService({
      // 强烈建议不要把 VOLC_ACCESSKEY 和 VOLC_SECRETKEY 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
      // 本示例通过从环境变量中读取 VOLC_ACCESSKEY 和 VOLC_SECRETKEY,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY
      accessKeyId: process.env.VOLC_ACCESSKEY,
      secretKey: process.env.VOLC_SECRETKEY,
    });

    const requestParam = {
      // 服务 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",
    };

    const res = await imagexService.GetImageAuthKey(requestParam);
    console.log("res", res);
  } catch (err) {
    console.error(err);
  }
}

获取单个服务信息

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

接口调用示例如下所示。

import { imagex } from "@volcengine/openapi";

export async function GetImageServiceDemo() {
  try {
    const imagexService = new imagex.ImagexService({
      // 强烈建议不要把 VOLC_ACCESSKEY 和 VOLC_SECRETKEY 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
      // 本示例通过从环境变量中读取 VOLC_ACCESSKEY 和 VOLC_SECRETKEY,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY
      accessKeyId: process.env.VOLC_ACCESSKEY,
      secretKey: process.env.VOLC_SECRETKEY,
    });

    const requestParam = {
      // 服务 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",
    };

    const res = await imagexService.GetImageService(requestParam);
    console.log("res", res);
  } catch (err) {
    console.error(err);
  }
}

获取所有服务信息

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

接口调用示例如下所示。

import { imagex } from "@volcengine/openapi";

export async function GetAllImageServicesDemo() {
  try {
    const imagexService = new imagex.ImagexService({
      // 强烈建议不要把 VOLC_ACCESSKEY 和 VOLC_SECRETKEY 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
      // 本示例通过从环境变量中读取 VOLC_ACCESSKEY 和 VOLC_SECRETKEY,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY
      accessKeyId: process.env.VOLC_ACCESSKEY,
      secretKey: process.env.VOLC_SECRETKEY,
    });

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

    const res = await imagexService.GetAllImageServices(requestParam);
    console.log("res", res);
  } catch (err) {
    console.error(err);
  }
}