阅读本文,您可以获取 Node SDK 多文件压缩的接口调用示例,实现快速开发。
说明
本文的调用示例包含接口的部分参数。由于参数间可能存在互斥关系,在调用时,请您参考注释,进行调整。
调用接口前,请先完成 Node SDK 的安装及初始化操作。
本节为您介绍多文件压缩相关接口的功能和调用示例。
您可以调用 CreateImageCompressTask 接口创建多文件压缩异步任务。详细的参数说明可参见 CreateImageCompressTask 接口文档。
接口调用示例如下所示。
import { imagex } from "@volcengine/openapi";
export async function CreateImageCompressTaskDemo () {
try {
const imagexService = new imagex.ImagexService({
// 强烈建议不要把 AccessKey ID 和 AccessKey Secret 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
accessKeyId: process.env.VOLC_ACCESSKEY,
// 本示例通过从环境变量中读取 AccessKey ID 和 AccessKey Secret,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY
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": "7g**2i",
// 压缩后文件压缩包的指定名称,默认为随机 Key。
"Output": "testcompress",
// 压缩方法,取值如下所示:
// <li> `0`:ZIP DEFLATE 压缩打包方法 </li>
// <li> `1`:仅保存文件,不执行压缩打包 </li>
"ZipMode": 0,
// 与 `FileList`,二选一。
// 索引文件 StoreUri,为 .txt 文件,该索引文件需上传至指定服务对应存储中。
// 该索引文件内需填写待压缩文件的 StoreUri,每行填写一个,最多可填写 3000 行。总文件大小不超过 45000 MB。若超出限制,则取消压缩打包操作,直接返回错误。
"IndexFile": "tos-boe-i-hr***pr/testcompress.txt",
// POST 类型的回调 URL,用于接收相关回调 JSON 类型数据。
"Callback": "http://test.com",
// 与`IndexFile`,二选一。
// 压缩文件列表配置,压缩文件 URL 最多为 500 个,总文件大小不超过 45000 MB。若超出限制,则取消压缩打包操作,直接返回错误。
"FileList" : [
{
// 公网可访问的待压缩文件 URL
"Url": "http://test.imagex.com/tos-cn-i-rw****qr/86****4c.png~tplv-rw***qr-6.image",
// <li> 指定时,为 URL 文件所在压缩包中的别名。 </li>
// <li> 不指定时,若能提取原文件名称时,则以 URL 原文件名称;否则,使用随机名称。 </li>
"Alias": "compress1",
// URL 对应资源在压缩包中的文件夹,不传时则将该资源存储至一级目录下。不能以`/`结尾。
"Folder": "a/b",
}
],
}
const res = await imagexService.CreateImageCompressTask(requestParam);
console.log('res',res)
} catch (err) {
console.error(err);
}
}
您可以调用 GetCompressTaskInfo 接口获取异步压缩任务详情。详细的参数说明可参见 GetCompressTaskInfo 接口文档。
接口调用示例如下所示。
import { imagex } from "@volcengine/openapi";
export async function GetCompressTaskInfoDemo () {
try {
const imagexService = new imagex.ImagexService({
// 强烈建议不要把 AccessKey ID 和 AccessKey Secret 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
accessKeyId: process.env.VOLC_ACCESSKEY,
// 本示例通过从环境变量中读取 AccessKey ID 和 AccessKey Secret,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY
secretKey: process.env.VOLC_SECRETKEY,
});
const requestParam = {
// 异步任务 ID
"TaskId": "82370***12102",
// 服务 ID。
// <li> 您可以在veImageX 控制台 [服务管理](https://console.volcengine.com/imagex/service_manage/)页面,在创建好的图片服务中获取服务 ID。 </li>
// <li> 您也可以通过 OpenAPI 的方式获取服务 ID,具体请参考[获取所有服务信息](https://www.volcengine.com/docs/508/9360)。 </li>
"ServiceId": "7j**6",
}
const res = await imagexService.GetCompressTaskInfo(requestParam);
console.log('res',res)
} catch (err) {
console.error(err);
}
}