# @filebase/sdk 中文文档

规范地址：https://npmcn.com/package/%40filebase/sdk/

版本：1\.0\.6
npm 元数据更新时间：2024-09-20T20:17:33.934Z
中文译文更新时间：2026-11-14T17:45:14.556Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40filebase/sdk
原文对照：https://npmcn.com/package/%40filebase/sdk/?lang=original
项目主页：https://github.com/filebase/filebase-sdk#readme
源码仓库：https://github.com/filebase/filebase-sdk

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：1.2 MB，14 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- Node.js 要求：\>=16\.0\.0
- 运行依赖：13 个
- 首次发布：2023-12-22T18:34:39.734Z
- 最新版本发布：2024-09-20T20:17:33.675Z
- 近 30 天下载量：5864（2026-10-15 至 2026-11-13，npm 官方下载统计）
- 已发布版本数：7（近 12 个月 0 个）

## 中文简介

用于与文件库服务交互的 SDK \[S3( Buckets, Objects), IPS( Gateways, Pins) IPNS( 名)\]

## 安装

```sh
npm install @filebase/sdk
```

也可以使用：`pnpm add @filebase/sdk`、`yarn add @filebase/sdk`、`bun add @filebase/sdk`

## README

# • 文件库SDK

开发者友好 \[Etrol\] [森林小组](https://docs.ipfs.tech/concepts/what-is-ipfs/ "What is IPFS?") | [互联网档案馆的存檔,存档日期2013-12-04](https://docs.ipfs.tech/concepts/ipns/ "What is IPNS?") \[S3\]

## 关于

Filebase SDK提供混合数据管理解决方案,将S3兼容云存储与IPFS相混合 (行星间文件系统) 接线服务. 它具有强大的S3桶管理、上传对象处理和 下载,并与IPFS和IPNS(行星间命名系统)进行无缝集成,用于分散存储 操作。 SDK支持高级数据任务,如将文件汇编到 CAR( Content addressable aRchive) 格式和 通过强有力的认证确保安全交易。 为各种应用程序设计的 Filebase SDK 是理想的 与分散式、对等式的优势相结合 储存、满足内容分发、数据备份和档案等各种需要。 发展行星际 申请从未如此容易.

### JS 客户端

使用 npm 安装软件包

```shell
npm install @filebase/sdk
```

线条 :

```shell
yarn add @filebase/sdk
```

### 开始

下面的片段显示如何用 `BucketManager`,将新对象上传到 IPFS 与 `ObjectManager`,用 `NameManager`,删除对象为 `ObjectManager` 终于 删除桶为 `BucketManager`。 。 。 .

要使用您的工程中的库, 请使用 npm 或 纱线安装 [`@filebase/sdk`](https://www.npmjs.com/package/@filebase/sdk) 模块。 需要节点.js 16+.

**节点.js**

```js
// Import Classes
import {
  BucketManager, 
  ObjectManager, 
  NameManager, 
  GatewayManager, 
  PinManager
} from '@filebase/sdk'

// Initialize BucketManager
const bucketManager = new BucketManager(S3_KEY, S3_SECRET);
// Create bucket
const bucketName = `create-bucket-[random string]`;
await bucketManager.create(bucketName);

// Initialize ObjectManager
const objectManager = new ObjectManager(S3_KEY, S3_SECRET, {
  bucket: bucketName
});
// Upload Object
const objectName = `new-object`;
const uploadedObject = await objectManager.upload(objectName, body);
// Download Object
await uploadedObject.download();
// Copy Object to a New Bucket
const bucketCopyDestinationName = `copy-dest-bucket`
await bucketManager.create(bucketCopyDestinationName);
await objectManager.copy(`new-object`, bucketCopyDestinationName);

// Initialize NameManager
const nameManager = new NameManager(S3_KEY, S3_SECRET);
// Create New IPNS Name with Broadcast Disabled
const ipnsLabel = `myFirstIpnsKey`;
const ipnsName = await nameManager.create(ipnsLabel, uploadedObject.cid, {
  enabled: true
});

// Initialize GatewayManager
const gatewayManager = new GatewayManager(S3_KEY, S3_SECRET);
// Create New Gateway
const gatewayName = "myRandomGatewayName";
const myGateway = await gatewayManager.create(gatewayName);

// Initialize PinManager
const pinManager = new PinManager(S3_KEY, S3_SECRET, {
  bucket: bucketName,
  gateway: {
    endpoint: "https://myRandomGatewayName.myfilebase.com"
  }
});
// Create New Pin with Metadata
const myNewPin = await pinManager.create("my-pin", "QmTJkc7crTuPG7xRmCQSz1yioBpCW3juFBtJPXhQfdCqGF", {
  "application": "my-custom-app-on-filebase"
});
```

关于JS客户端的全部API参考文件,请访问 [https://filesbase.github.io/filesbase-sdk 页面存档备份,存于互联网档案馆](https://filebase.github.io/filebase-sdk)

### 测试

测试见于 `test` 目录并被构建为与Node.js v20+测试跑车运行.

## 常见问题

### @filebase/sdk 是什么？

用于与文件库服务交互的 SDK \[S3\( Buckets, Objects\), IPS\( Gateways, Pins\) IPNS\( 名\)\]

### 如何安装 @filebase/sdk？

在项目目录运行 npm install @filebase/sdk，或使用 pnpm add / yarn add / bun add。

### @filebase/sdk 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @filebase/sdk 支持 ESM 还是 CommonJS？

同时提供 ES Module 与 CommonJS 入口，import 和 require\(\) 都可以使用，打包工具会自动选择合适的版本。

### @filebase/sdk 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>=16\.0\.0。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### @filebase/sdk 可以商用吗？

@filebase/sdk 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @filebase/sdk 的下载量有多少？

根据 npm 官方下载统计，@filebase/sdk 在 2026/10/15 – 2026/11/13 这 30 天内被下载 5,864 次，日均约 195 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @filebase/sdk 还在维护吗？

最新版本 1\.0\.6 发布于 2024/09/21（2 年前）；至今共发布 7 个版本，其中过去 12 个月发布了 0 个；首次发布于 2023/12/23。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

