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

veImageX

复制全文
下载 pdf
Node.js SDK
数据抓取
复制全文
下载 pdf
数据抓取

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

说明

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

调用说明

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

前提条件

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

调用示例

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

数据抓取(Fetch)

您可以调用 FetchImageUrl 接口数据抓取(Fetch)。详细的参数说明可参见 FetchImageUrl 接口文档。

接口调用示例如下所示。

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

export async function FetchImageUrlDemo() {
  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 = {
      // 待抓取上传的文件 URL。
      Url: "https://test.org/con.jpg",
      // 目标服务 ID,迁移后的文件将上传至该服务绑定的存储。
      // <li> 您可以在 veImageX 控制台[服务管理](https://console.volcengine.com/imagex/service_manage/)页面,在创建好的图片服务中获取服务 ID。 </li>
      // <li> 您也可以通过 OpenAPI 的方式获取服务 ID,具体请参考[获取所有服务信息](https://www.volcengine.com/docs/508/9360)。 </li>
      ServiceId: "jh**9k",
      // 指定抓取成功后的文件存储 key,不包含 bucket 部分。默认使用随机生成的 key。
      // note:
      // 若指定 key 已存在,则会覆盖服务中 StoreKey 对应的已有文件,此时服务中保存文件的数量未发生变化。
      StoreKey: "FetchTest",
      // 资源下载超时时间。
      // <li> 同步处理下最大超时为 20 秒; </li>
      // <li> 异步处理下最大超时为 90 秒。 </li>
      TimeOut: 10,
      // 是否采用异步,取值如下所示:
      // <li> true:采用异步 </li>
      // <li> false:(默认)不采用异步 </li>
      // note:
      // 若您的资源大小小于 5 G,但预估资源迁移超时时间超过 20 s,建议您选择异步处理。
      Async: false,
      // 迁移资源的 IP 地址
      Host: "ip:port",
      // 回调 URL,veImageX 以 Post 方式向业务服务器发送 JSON 格式回调数据。当Async取值为true,即采用异步处理时,为必填。
      Callback: "https://info.com",
      // 校验下载文件的 MD5,若校验不一致则停止文件的上传。
      MD5: "9a8229123604d22d18b6dcfe44b4519e",
      // 透传给业务的回调内容,当Callback不为空时为必填,取值需要符合CallbackBodyType指定格式。
      CallbackBodyType: '{"param1":"value1","param2":"value2"}',
      // 透传给业务的回调内容格式。当CallbackBody不为空时为必填。取值如下所示:
      // <li> application/json </li>
      // <li> application/x-www-form-urlencoded </li>
      CallbackBody: "application/json",
      // 回调时使用的 IP 地址
      CallbackHost: "ip:port",
      // 服务存储中存在相同的存储 key 时,是否忽略本次迁移操作。取值如下所示:
      // <li> true:忽略本次迁移操作。 </li>
      // <li> false:(默认)继续迁移并覆盖相同 key 的资源。 </li>
      IgnoreSameKey: false,
      // 文件在抓取时,是否不执行解码操作,取值如下所示:
      // <li> true:文件仅下载上传,不执行解码操作。 </li>
      // <li> false:(默认)文件在下载上传同时执行解码操作。 </li>
      FetchOnly: true,
    };

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

获取异步抓取任务详情

您可以调用 GetUrlFetchTask 接口获取异步抓取任务详情。详细的参数说明可参见 GetUrlFetchTask 接口文档。

接口调用示例如下所示。

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

export async function GetUrlFetchTaskDemo() {
  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,您可通过调用 [FetchImageUrl](https://www.volcengine.com/docs/508/68807)接口获取该 ID。
      Id: "92830H07WJS28370",
      ServiceId: "xxxx",
    };

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

最近更新时间:2024.08.12 15:33:26
这个页面对您有帮助吗?
有用
有用
无用
无用