跳到主要內容

總覽

歡迎使用 DID Space Client SDK for JavaScript!這是一個功能強大、現代化的函式庫,專為 Node.js 環境設計,讓您能夠無縫地與 DID Spaces 互動。如果您正在建構使用者真正擁有並控制其資料的應用程式,那麼您來對地方了。

本 SDK 提供一個簡單而全面的介面,用於在一個以使用者為中心且經加密保護的分散式儲存系統中,管理檔案、同步資料夾以及處理其他資料物件。

主要功能

完整的物件管理

透過一套直觀的指令,對單一檔案和資料物件執行所有必要的 CRUD (建立、讀取、更新、刪除) 操作。

強大的資料夾同步

使用高階的 `SyncFolderPush` 和 `SyncFolderPull` 指令,輕鬆保持本地目錄與 DID Space 中的遠端目錄同步。

專用的 NFT 儲存

透過專用指令處理 NFT 資產,簡化資產檔案及其關聯的 DID 文件的上傳過程,確保資料的完整性。

原生安全設計

所有 API 請求都使用錢包進行加密簽名,確保每次操作都經過驗證且可核實,保護資料免於未經授權的存取。

核心架構

本 SDK 基於一個簡單而穩固的指令式架構。您可以透過兩個主要元件與 API 互動:

  1. `SpaceClient`

    SDK 的主要進入點。您需要使用您的設定和驗證憑證來將其實例化。

  2. 指令 (Commands)

    這些是代表您想執行的特定動作的類別,例如上傳檔案或列出目錄內容。每個指令都封裝了其對應操作所需的參數和邏輯。

您的應用程式會建立一個指令物件,填入必要的輸入,然後將其傳遞給 SpaceClientsend 方法來執行請求。

SDK 使用模式

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

async function uploadFile() {
  // 1. 使用驗證資訊初始化客戶端
  const client = new SpaceClient({
    auth: {
      endpoint: 'https://www.didspaces.com/app/api/space/...',
      wallet: getWallet(),
    },
  });

  // 2. 建立一個帶有其特定輸入的指令
  const command = new PutObjectCommand({
    key: 'documents/hello.txt',
    data: 'Hello, DID Space!',
  });

  // 3. 發送指令並接收輸出
  const output = await client.send(command);

  if (output.statusCode === 200) {
    console.log('File uploaded successfully!');
  } else {
    console.error('Upload failed:', output.statusMessage);
  }
}

uploadFile();

這種設計模式使 SDK 高度模組化且易於擴充。每個指令都是獨立的,讓您的程式碼保持清晰和有組織。

Overview

如何導覽本文件

本文件的結構旨在幫助您找到所需的資訊,無論您是剛入門還是正在尋找特定細節。

後續步驟

準備好開始建構了嗎?最好的學習方式就是動手做。請遵循我們的「快速入門」指南來安裝 SDK 並進行您的第一次 API 呼叫。

前往「快速入門」

安裝 SDK,初始化客戶端,並執行您的第一次檔案上傳。

開始教學