You need to enable JavaScript to run this app.
导航
数据迁移
最近更新时间:2024.08.12 15:33:26首次发布时间:2024.08.12 14:21:09

阅读本文,您可以获取 Node SDK 数据迁移的接口调用示例,实现快速开发。

说明

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

调用说明

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

前提条件

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

调用示例

本节为您介绍数据迁移相关接口的功能和调用示例。

创建数据迁移任务

您可以调用 CreateImageMigrateTask 接口创建数据迁移任务。详细的参数说明可参见 CreateImageMigrateTask 接口文档。

接口调用示例如下所示。

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

export async function CreateImageMigrateTaskDemo() {
  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 = {
      // 任务信息
      Task: {
        // 自定义迁移任务名称
        Name: "migrate-test",
        // 迁移源信息
        Source: {
          // 迁移云服务商。取值如下所示:
          // <li> OSS:阿里云 </li>
          // <li> COS:腾讯云 </li>
          // <li> KODO:七牛云 </li>
          // <li> BOS:百度云 </li>
          // <li> OBS:华为云 </li>
          // <li> Ucloud:Ucloud file </li>
          // <li> AWS:AWS 国际站 </li>
          // <li> S3:其他 S3 协议存储 </li>
          // <li> URL:以上传 URL 列表的方式迁移 </li>
          Vendor: "OSS",
          // 仅当Vendor 非 URL时为必填。
          // Access Key,与 Secret Key 同时填写,为了保证有访问源数据桶的权限。
          // <li> 请参考[云数据迁移准备](https://www.volcengine.com/docs/508/129213)获取对应阿里云OSS、腾讯云COS、七牛云KODO、百度云BOS、华为云OBS、 优刻得(Ucloud File)、AWS国际站的账号 AK/SK。 </li>
          // <li> 对于其他 S3 协议存储的AK/SK,请根据其具体源站信息填写。 </li>
          AK: "AKTP8shJDSYGbi8*****",
          // 仅当Vendor 非 URL时为必填。
          // Secret Key,与 Access Key 同时填写,为了保证有访问源数据桶的权限。
          // <li> 请参考[云数据迁移准备](https://www.volcengine.com/docs/508/129213)获取对应阿里云OSS、腾讯云COS、七牛云KODO、百度云BOS、华为云OBS、 优刻得(Ucloud File)、AWS国际站的账号 AK/SK。 </li>
          // <li> 对于其他 S3 协议存储的AK/SK,请根据其具体源站信息填写。 </li>
          SK: "PJDJSAJNNNCbE1E****",
          // Bucket 所在地区。仅当Vendor 非 URL/OSS/KODO/AWS时为必填。
          // <li> 请参考[云数据迁移准备](https://www.volcengine.com/docs/508/129213)获取对应阿里云OSS、腾讯云COS、七牛云KODO、百度云BOS、华为云OBS、 优刻得(Ucloud File)、AWS国际站的 Bucket 地区。 </li>
          // <li> 对于其他 S3 协议存储的 Bucket 地区,请根据其具体源站信息填写。 </li>
          Region: "cn-beijing",
          // 源端 Bucket。
          // <li> 仅当Vendor为URL时,需填写 URL 列表文件地址(公网 URL 地址)。 </li>
          // note:
          // 支持指定迁移文件和转码后迁移文件进行重命名,详见 [URL 列表迁移文件说明](https://www.volcengine.com/docs/508/1263268)。
          //
          // <li> 当Vendor为其他时,请填写对应云服务商所需迁移数据的 Bucket 名称。您可参考[云数据迁移准备](https://www.volcengine.com/docs/508/129213)获取对应阿里云OSS、腾讯云COS、七牛云KODO、百度云BOS、华为云OBS、 优刻得(Ucloud File)、AWS国际站的 Bucket 名称。 </li>
          Bucket: "storage-test",
          // 仅当Vendor为S3时必填。
          // S3 协议 Endpoint,需以http://或https://开头。请根据源站信息填写。
          Endpoint: "https://s3.amazonaws.com",
          // 仅当Vendor 非 URL时为可填。
          // 迁移源云服务商 CDN 域名,若不为空将使用该 CDN 域名下载三方云厂商的资源。
          CdnHost: "my-bucket.oss-cn-hangzhou.aliyuncs.com",
          // 是否丢弃源 Header。取值如下所示:
          // <li> true:丢弃源 Header </li>
          // <li> false:(默认)保留源 Header </li>
          SkipHeader: false,
          // 仅迁移匹配的前缀列表文件。文件路径前缀无需包含桶名称,但需要完整路径。
          // 默认为空,表示对该存储 Bucket 内资源执行全量迁移。若不为空,表示仅做部分迁移,即指定迁移的文件路径前缀。
          Prefix: ["home/aaaa"],
          // 仅迁移匹配的正则表达式列表的文件。默认为空,表示对该存储 Bucket 内资源执行全量迁移。
          // note:
          // <li> 多条正则表达式之间是"或"的关系,即源文件匹配任何一条正则表达式即视为符合迁移条件。 </li>
          // <li> 正则过滤规则需要遍历源桶中的全部文件,如果源桶中文件数量较多会降低迁移速度。 </li>
          Regex: [".png"],
          // 迁移文件起始时间点。仅迁移该查询时间段内新增或变更的文件。默认为空。
          // 日期格式按照 ISO8601 表示法,格式为:YYYY-MM-DDThh:mm:ss±hh:mm,比如2019-06-02T00:00:00+08:00。
          TimeStart: "2019-06-02T00:00:00+08:00",
          // 迁移文件结束时间点。默认为空。仅迁移该查询时间段内新增或变更的文件。
          // 日期格式按照 ISO8601 表示法,格式为:YYYY-MM-DDThh:mm:ss±hh:mm,比如2019-06-02T00:00:00+08:00。
          TimeEnd: "2019-06-03T00:00:00+08:00",
        },
        // 转码配置
        Transcode: {
          // 目标转码格式,仅针对静图执行转码策略。支持的格式有 png、jpeg、heic、avif、webp、vvic。
          Format: "png",
          // 转码质量参数,取值范围为 [1,100]。对于 PNG 为无损压缩,其他格式下其值越小,压缩率越高,画质越差。
          Quality: 75,
          // 包含透明通道的图片是否编码为降级格式。取值如下所示:
          // <li> true:降级 </li>
          // <li> false:(默认)不降级 </li>
          AlphaDemotion: true,
          // 降级编码格式,仅当AlphaDemotion为true时必填。支持的格式有 png、jpeg、heic、avif、webp、vvic。
          DemotionFmt: "heic",
          // 转码是否保留 exif 信息。取值如下所示:
          // <li> true:保留 </li>
          // <li> false:(默认)不保留 </li>
          EnableExif: false,
          // 对带有 CMYK 色彩空间的图片,是否跳过转码处理直接存储原图。取值如下所示:
          // <li> true:是 </li>
          // <li> false:(默认)否 </li>
          SkipCMYK: false,
          // 仅当转码/降级格式为 heic、webp、jpeg 时生效。
          // 是否开启自适应转码。
          // <li> true:开启。开启后,将根据 Format 或者 DemotionFmt 指定格式进行自适应转码处理。 </li>
          // <li> false:(默认)关闭 </li>
          Adapt: false,
        },
        // 目的信息
        Dst: {
          // 迁移目标服务 ID,请提前[新建服务](https://www.volcengine.com/docs/508/357114#%E6%96%B0%E5%BB%BA%E6%9C%8D%E5%8A%A1)。
          // <li> 您可以在veImageX 控制台[服务管理](https://console.volcengine.com/imagex/service_manage/)页面,在创建好的图片服务中获取服务 ID。 </li>
          // <li> 您也可以通过 OpenAPI 的方式获取服务 ID,具体请参考[获取所有服务信息](https://www.volcengine.com/docs/508/9360)。 </li>
          ServiceId: "uh**7j",
          // 源 Bucket 名称保留规则。取值如下所示:
          // <li> true:不保留,迁移后资源访问 URI 中,不保留迁移源的 Bucket 名称。 </li>
          // <li> false:(默认)保留,迁移后资源访问 URI 中,会保留迁移源的 Bucket 名称。 </li>
          SkipBucket: true,
          // 目标 key 前缀,即保存到到指定目录下。如需多重目录,请使用/分割,并以/结尾。
          // 默认为空,表示迁移到根目录。
          // <li> 使用非 URL 方式迁移到根目录时:迁移后 存储 Key 与源存储 Bucket 的文件存储 Key 相同。 </li>
          // <li> 使用 Url 方式迁移到根目录时:迁移后存储 Key 与源 URL 中 Path 值相同。 </li>
          Prefix: "aaa/bbb/ccc/",
          // 同名文件覆盖规则配置。取值如下所示:
          // <li> 0:(默认)直接覆盖同名文件 </li>
          // <li> 1:增加文件名后缀,后缀为 任务 ID </li>
          // <li> 2:跳过同名文件,即不做迁移 </li>
          // note:
          // 同名文件指文件在对象存储中的访问 Key 相同的文件,调用 veImageX 服务时会用到文件访问 Key。
          UploadConf: 0,
        },
        // 迁移策略
        RunStrategy: {
          // 源下载 QPS 限制。如取值不为空,则长度必须为 24,表示一天 24 小时内各小时的 QPS 限制值。默认无限制。
          // <li> 取值为负值时,表示无限制 </li>
          // <li> 取值为 0 时,表示对应时间不允许迁移 </li>
          ReadQps: [
            100, 200, 300, 400, 500, 600, 700, 800, 900, 1000, 1100, 1200, 1300,
            1400, 1500, 1600, 1700, 1800, 1900, 2000, 2100, 2200, 2300, 2400,
          ],
          // 源下载流量限制。单位为 Byte。如取值不为空,则长度必须为24,表示一天 24 小时内各小时的流量限制值。默认无限制。
          // <li> 取值为负值时,表示无限制 </li>
          // <li> 取值为 0 时,表示对应时间不允许迁移 </li>
          ReadRate: [
            100, 200, 300, 400, 500, 600, 700, 800, 900, 1000, 1100, 1200, 1300,
            1400, 1500, 1600, 1700, 1800, 1900, 2000, 2100, 2200, 2300, 2400,
          ],
        },
        // 回调信息。配置后,当任务执行完成时,将往该回调配置地址发送任务回调信息。
        CallbackCfg: {
          // 回调方法。仅支持取值为 http。
          Method: "http",
          // 回调地址。Method取值http时,填写公网可访问的 URL 地址,任务结束将向该地址发送 HTTP POST 请求。具体回调参数请参考[回调内容](#回调参数)。
          Addr: "http://test.com",
          // 回调信息中是否包含具体迁移任务条目信息。取值如下所示:
          // <li> true:包含。仅包含迁移成功的任务条目信息,迁移失败的任务列表请在迁移完成后调用 [ExportFailedMigrateTask](https://www.volcengine.com/docs/508/1261309) 接口获取。 </li>
          // <li> false:(默认)不包含。 </li>
          // warning
          // 若任务中包含的条目数量过多,会导致回调消息体过大,增加回调失败的风险。因此建议仅在任务中条目量级不超过十万时使用该参数。
          IncludeEntry: false,
          // 任务维度自定义回调参数,最多可输入 1024 个任意类型字符,并在回调的 CallbackArgs 中返回。
          CallbackArgs: "App1",
        },
      },
    };

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

删除迁移任务

您可以调用 DeleteImageMigrateTask 接口删除迁移任务。详细的参数说明可参见 DeleteImageMigrateTask 接口文档。

接口调用示例如下所示。

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

export async function DeleteImageMigrateTaskDemo() {
  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 = {
      // 任务地区(即任务目标服务的地区),默认空,返回国内任务。
      // <li> cn:国内 </li>
      // <li> sg:新加坡 </li>
      Region: "cn",
      // 仅当任务状态为非Running时生效。
      // 任务 ID,请参考 [GetImageMigrateTasks](https://www.volcengine.com/docs/508/1108670)获取返回的任务 ID。
      TaskId: "648c15f764f3c4abd95ad044",
    };

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

更新迁移任务策略

您可以调用 UpdateImageTaskStrategy 接口更新迁移任务策略。详细的参数说明可参见 UpdateImageTaskStrategy 接口文档。

接口调用示例如下所示。

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

export async function UpdateImageTaskStrategyDemo() {
  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 = {
      // 调整后的迁移策略
      RunStrategy: {
        // 源下载 QPS 限制。如取值不为空,则长度必须为 24,表示一天 24 小时内各小时的 QPS 限制值。默认无限制。
        // <li> 取值为负值时,表示无限制 </li>
        // <li> 取值为 0 时,表示对应时间不允许迁移 </li>
        ReadQps: [
          100, 200, 300, 400, 500, 600, 700, 800, 900, 1000, 1100, 1200, 1300,
          1400, 1500, 1600, 1700, 1800, 1900, 2000, 2100, 2200, 2300, 2400,
        ],
        // 源下载流量限制。单位为 Byte。如取值不为空,则长度必须为24,表示一天 24 小时内各小时的流量限制值。默认无限制。
        // <li> 取值为负值时,表示无限制 </li>
        // <li> 取值为 0 时,表示对应时间不允许迁移 </li>
        ReadRate: [
          100, 200, 300, 400, 500, 600, 700, 800, 900, 1000, 1100, 1200, 1300,
          1400, 1500, 1600, 1700, 1800, 1900, 2000, 2100, 2200, 2300, 2400,
        ],
      },
      // 任务ID,请参考[CreateImageMigrateTask](https://www.volcengine.com/docs/508/1009929)获取返回的任务 ID。
      TaskId: "648c15f764f3c4abd95ad044",
    };

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

重启迁移失败任务

您可以调用 RerunImageMigrateTask 接口重启迁移失败任务。详细的参数说明可参见 RerunImageMigrateTask 接口文档。

接口调用示例如下所示。

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

export async function RerunImageMigrateTaskDemo() {
  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 = {
      // 任务地区(即任务目标服务的地区),默认空,返回国内任务。
      // <li> cn:国内 </li>
      // <li> sg:新加坡 </li>
      Region: "cn",
      // 仅当任务状态为Partial时生效。
      // 任务 ID,请参考 [GetImageMigrateTasks](https://www.volcengine.com/docs/508/1108670)获取返回的任务 ID。
      TaskId: "648c15f764f3c4abd95ad044",
    };

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

结束迁移任务

您可以调用 TerminateImageMigrateTask 接口结束迁移任务。详细的参数说明可参见 TerminateImageMigrateTask 接口文档。

接口调用示例如下所示。

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

export async function TerminateImageMigrateTaskDemo() {
  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 = {
      // 任务地区(即任务目标服务的地区),默认空,返回国内任务。
      // <li> cn:国内 </li>
      // <li> sg:新加坡 </li>
      Region: "cn",
      // 任务 ID,请参考 [GetImageMigrateTasks](https://www.volcengine.com/docs/508/1108670) 获取返回的任务 ID。
      TaskId: "648c15f764f3c4abd95ad044	",
    };

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

导出迁移失败列表

您可以调用 ExportFailedMigrateTask 接口导出迁移失败列表。详细的参数说明可参见 ExportFailedMigrateTask 接口文档。

接口调用示例如下所示。

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

export async function ExportFailedMigrateTaskDemo() {
  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 = {
      // 任务地区(即任务目标服务的地区),默认空,返回国内任务。
      // <li> cn:国内 </li>
      // <li> sg:新加坡 </li>
      Region: "cn",
      // 任务 ID,请参考[CreateImageMigrateTask](https://www.volcengine.com/docs/508/1009929)获取返回的任务 ID。
      TaskId: "648c15f764f3c4abd95ad044",
    };

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

获取服务商 Bucket

您可以调用 GetVendorBuckets 接口获取服务商 Bucket。详细的参数说明可参见 GetVendorBuckets 接口文档。

接口调用示例如下所示。

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

export async function GetVendorBucketsDemo() {
  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 = {
      // 服务商。取值如下所示:
      // <li> OSS:阿里云 </li>
      // <li> COS:腾讯云 </li>
      // <li> KODO:七牛云 </li>
      // <li> BOS:百度云 </li>
      // <li> OBS:华为云 </li>
      // <li> Ucloud:Ucloud file </li>
      // <li> AWS:AWS 国际站 </li>
      // <li> S3:其他 S3 协议存储 </li>
      // <li> URL:以上传 URL 列表的方式迁移 </li>
      Vendor: "OSS",
      // Bucket 所在地区。仅当Vendor 非 URL/OSS/KODO/AWS 时为必填。
      Region: "cn-beijing",
      // Access Key。是与 Secret Key 同时填写的,为了保证有访问源数据桶的权限。
      AK: "AKTP8shJDSYGbi8*****",
      // Secret Key。是与 Access Key 同时填写的,为了保证有访问源数据桶的权限。
      SK: "PJDJSAJNNNCbE1E****",
      // S3 协议 Endpoint,需以http://或https://开头。仅当Vendor为S3时必填。
      Endpoint: "https://s3.amazonaws.com",
    };

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

获取迁移任务详情

您可以调用 GetImageMigrateTasks 接口获取迁移任务详情。详细的参数说明可参见 GetImageMigrateTasks 接口文档。

接口调用示例如下所示。

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

export async function GetImageMigrateTasksDemo() {
  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 = {
      // 任务地区(即任务目标服务的地区),缺省时将返回国内列表。取值如下所示:
      // <li> cn:国内 </li>
      // <li> sg:新加坡 </li>
      Region: "cn",
      // 任务 ID。
      TaskId: "648c15f764f3c4abd95ad044",
      // 迁移的目标服务 ID。
      ServiceId: "vu**yi",
      // 分页偏移量,用于控制分页查询返回结果的起始位置,以便对数据进行分页展示和浏览。默认值为 0。
      // note:
      // 例如,指定分页条数 Limit = 10,分页偏移量 Offset = 10,表示从查询结果的第 11 条记录开始返回数据,共展示 10 条数据。
      Offset: 0,
      // 分页查询时,显示的每页数据的最大条数。默认值为 10,最大值为 1000。
      Limit: 10,
      // 返回任务名称中包含该值的迁移任务信息。
      TaskNamePtn: "test",
      // 任务状态,填入多个时使用英文逗号分隔。取值如下所示:
      // <li> Initial:创建中 </li>
      // <li> Running:运行中 </li>
      // <li> Done:全部迁移完成 </li>
      // <li> Partial:部分迁移完成 </li>
      // <li> Failed:迁移失败 </li>
      // <li> Terminated:中止 </li>
      Status: "Done",
    };

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