このページでは、TypeScript Axios SDK のセットアップ手順を説明します。手順に従ってクライアント SDK を設定することで、新R25 Developers の API にアクセスできるようになります。

クイックスタート

TypeScript Axios SDK は、HTTP 通信処理に Axios を採用した Node.js 用の SDK です。

Core SDK のインストール

npm install @r25-developers/typescript-axios-core

各アプリケーション用 SDK のインストール

アプリケーションには固有の識別子があります。以下の例では、news アプリケーションの SDK をインストールしています。

npm install @r25-developers/news-typescript-axios-cdn-sdk.ts

新R25 Developers Project オブジェクトの作成

Project オブジェクトは基本的な設定情報や認証情報を保持し、アプリケーション全体に共有する役割を持ちます。

アプリケーションの SDK に対して初期化した Project オブジェクトを渡すことで、SDK を通じてアプリケーションの API にアクセスすることができます。

import { initializeProject } from "@r25-developers/typescript-axios-core";

const projectConfig = {
  projectId: "YOUR_PROJECT_ID",
  credential: {
    key: "YOUR_API_KEY",
    secret: "YOUR_API_SECRET",
  },
};

initializeProject(projectConfig);

認証情報のシステムへの安全な統合

認証情報をコードに直接埋め込むべきではありません。代わりに、環境変数を使用して認証情報を安全に管理することをお勧めします。

Project オブジェクトの初期化時に credential プロパティを作成して渡すこともできますが、下記の環境変数を定義することで、Core SDK は自動的に認証情報を取得します。

R25_GATEWAY_API_KEY=YOUR_API_KEY
R25_GATEWAY_API_SECRET=YOUR_API_SECRET
import { initializeProject } from "@r25-developers/typescript-axios-core";

const projectConfig = {
  projectId: "YOUR_PROJECT_ID",
  // credential の省略が可能
};

initializeProject(projectConfig);

アプリケーションの SDK を利用

Project オブジェクトを各アプリケーションの SDK に渡して初期化することで、アプリケーションの API にアクセスできます。

import { NewsCDNNewsApi } from "@r25-developers/news-typescript-axios-cdn-sdk.ts";
import {
  initializeProject,
  getProject,
} from "@r25-developers/typescript-axios-core";

const projectConfig = {
  projectId: "YOUR_PROJECT_ID",
};

initializeProject(projectConfig);

async function getNewsList() {
  // 初期化済みの Project オブジェクトを取得
  const project = getProject();
  const api = new NewsCDNNewsApi(project, "YOUR_SPACE_ID");
  return await api.getNewsList({ instanceId: "YOUR_APPLICATION_INSTANCE_ID" });
}