跳到主要内容

快速入门

欢迎使用 DID Space Client SDK!本指南将引导您完成安装、配置 SDK 并执行您的第一次文件上传等基本步骤。只需几分钟,您就可以开始运行了。

前提条件

在开始之前,请确保您已具备以下条件:

  • 一个已设置好的 Blocklet 项目。
  • 一个 DID Space 端点 URL。要了解如何获取,请参阅连接到 DID Spaces

第 1 步:安装 SDK

首先,使用您偏好的包管理器将 @blocklet/did-space-js 包添加到您的项目中。

使用 npm 安装

bash
npm install @blocklet/did-space-js

使用 yarn 安装

bash
yarn add @blocklet/did-space-js

第 2 步:初始化 SpaceClient

SpaceClient 是与 SDK 交互的主要入口点。要初始化它,您需要提供身份验证凭据。在 Blocklet 环境中,最简单的方法是使用当前 Blocklet 的钱包和您的空间端点。

初始化客户端

typescript
import { SpaceClient } from '@blocklet/did-space-js';
import getWallet from '@blocklet/sdk/lib/wallet';

// 这会检索由 Blocklet 环境管理的钱包。
const wallet = getWallet();

// 替换为您的实际 DID Space 端点。
const endpoint = 'https://your-space-endpoint.did.abtnet.io/api/space/...';

const spaceClient = new SpaceClient({
  auth: {
    wallet,
    endpoint,
  },
});

第 3 步:上传文件

客户端初始化后,您现在可以发送命令了。我们将使用 PutObjectCommand 来上传一个简单的文本文件。

命令遵循一致的模式:您使用所需的输入创建一个命令实例,然后将其传递给 spaceClient.send() 方法。

send 方法返回一个包含请求状态的输出对象。statusCode200 表示成功。

上传文件

typescript
import { PutObjectCommand } from '@blocklet/did-space-js';
import { Buffer } from 'buffer';

async function uploadFile() {
  const command = new PutObjectCommand({
    // 您 DID Space 中文件(或对象键)的名称。
    key: 'greeting.txt',
    // 文件的内容。最好使用 Buffer。
    data: Buffer.from('Hello from the DID Space SDK!'),
  });

  const output = await spaceClient.send(command);

  if (output.statusCode === 200) {
    console.log('Success! Your file has been uploaded.');
  } else {
    console.error(`Upload failed with status ${output.statusCode}: ${output.statusMessage}`);
  }
}

uploadFile();

完整示例

这是一个完整的、可直接运行的示例,它结合了以上所有步骤。您可以将此代码放置在您的 Blocklet 项目中的一个异步函数内。

完整示例

typescript
import { SpaceClient, PutObjectCommand } from '@blocklet/did-space-js';
import getWallet from '@blocklet/sdk/lib/wallet';
import { Buffer } from 'buffer';

async function run() {
  // 1. 初始化客户端
  const wallet = getWallet();
  const endpoint = 'https://your-space-endpoint.did.abtnet.io/api/space/...'; // TODO: 替换为您的端点

  const spaceClient = new SpaceClient({
    auth: {
      wallet,
      endpoint,
    },
  });

  console.log('Client initialized. Preparing to upload file...');

  // 2. 创建并发送上传命令
  const command = new PutObjectCommand({
    key: 'greeting.txt',
    data: Buffer.from('Hello from the DID Space SDK!'),
  });

  const output = await spaceClient.send(command);

  // 3. 检查结果
  if (output.statusCode === 200) {
    console.log('Success! Your file has been uploaded.');
  } else {
    console.error(`Upload failed with status ${output.statusCode}: ${output.statusMessage}`);
    console.error('Stack trace:', output.stack);
  }
}

run().catch(console.error);

运行此代码后,您应该会在您的 DID Space 中看到 greeting.txt 文件。

后续步骤

恭喜!您已成功使用 DID Space Client SDK 上传了您的第一个文件。

既然您已掌握了基础知识,可以开始探索更高级的主题: