メインコンテンツへスキップ

はじめに

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('成功!ファイルがアップロードされました。');
  } else {
    console.error(`アップロードに失敗しました。ステータス ${output.statusCode}: ${output.statusMessage}`);
  }
}

uploadFile();

完全な例

以下は、上記のすべてのステップを組み合わせた、すぐに実行できる完全な例です。このコードは Blocklet プロジェクト内の async 関数内に配置できます。

完全な例

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('クライアントが初期化されました。ファイルのアップロードを準備しています...');

  // 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('成功!ファイルがアップロードされました。');
  } else {
    console.error(`アップロードに失敗しました。ステータス ${output.statusCode}: ${output.statusMessage}`);
    console.error('スタックトレース:', output.stack);
  }
}

run().catch(console.error);

このコードを実行すると、あなたの DID Space に greeting.txt ファイルが表示されるはずです。

次のステップ

おめでとうございます!DID Space Client SDK を使用して、最初のファイルのアップロードに成功しました。

基本を習得したので、さらに高度なトピックを探求できます: