🏷️ 属性ルートブロック
属性ルートブロックは、Nodeblocksアプリケーションにおける属性グループ管理操作のための事前設定されたHTTPエンドポイントを提供します。これらのルートは、適切な認証、認可、エラー処理による完全なAPIエンドポイントを作成するために、ハンドラー、バリデーター、ミドルウェアを組み合わせます。
🎯 概要
属性ルートブロックは以下を目的として設計されています:
- 属性グループ管理操作のための完全なAPIエンドポイントの提供
- 安全な操作のためのハンドラーとバリデーターの組み合わせ
- 認証と認可チェックの実装
- 関数コンポジションパターンのサポート
- ログとエラー管理の自動処理
📋 ルート構造
各属性ルートは一貫したパターンに従います:
- HTTPメソッド: 操作タイプの定義(GET、POST、PATCH、DELETE)
- パス: パラメータ付きエンドポイントURLの指定
- ハンドラー: ビジネスロジックのためのコンポーズド関数チェーン
- バリデーター: 認証と認可のチェック
🔧 利用可能な属性ルート
createAttributeRoute
新しい属性グループを作成し、作成されたリソースを返します。
目的: 属性グループ作成を処理
ルート詳細:
- メソッド:
POST
- パス:
/attributes
- 認証: 必要(Bearerトークン)
ハンドラー: createAttributeGroup
, getAttributeGroupById
, createAttributeGroupTerminator
バリデーター: verifyAuthentication
(getBearerTokenInfo), validateResourceAccess
(['admin'], getBearerTokenInfo)
使用方法:
import { routes } from '@nodeblocks/backend-sdk';
// Expressアプリでルートを登録
app.use('/api', routes.createAttributeRoute);
findAttributesRoute
正規化されたリスト形式ですべての属性グループを取得します。
目的: ページネーション付き属性グループをリスト
ルート詳細:
- メソッド:
GET
- パス:
/attributes
- 認証: 不要
ハンドラー: findAttributeGroups
, normalizeAttributesListTerminator
バリデーター: なし
使用方法:
import { routes } from '@nodeblocks/backend-sdk';
// Expressアプリでルートを登録
app.use('/api', routes.findAttributesRoute);
getAttributeRoute
IDで特定の属性グループを取得します。
目的: 属性グループデータを取得
ルート詳細:
- メソッド:
GET
- パス:
/attributes/:attributeId
- 認証: 不要
ハンドラー: getAttributeGroupById
, normalizeAttributeGroupTerminator
バリデーター: なし
使用方法:
import { routes } from '@nodeblocks/backend-sdk';
// Expressアプリでルートを登録
app.use('/api', routes.getAttributeRoute);
updateAttributeRoute
既存の属性グループを更新し、更新されたリソースを返します。
目的: 属性グループデータを変更
ルート詳細:
- メソッド:
PATCH
- パス:
/attributes/:attributeId
- 認証: 必要(Bearerトークン)
ハンドラー: updateAttributeGroup
, getAttributeGroupById
, normalizeAttributeGroupTerminator
バリデーター: verifyAuthentication
(getBearerTokenInfo), validateResourceAccess
(['admin'], getBearerTokenInfo)
使用方法:
import { routes } from '@nodeblocks/backend-sdk';
// Expressアプリでルートを登録
app.use('/api', routes.updateAttributeRoute);
deleteAttributeRoute
IDで属性グループを削除します。
目的: 属性グループを削除
ルート詳細:
- メソッド:
DELETE
- パス:
/attributes/:attributeId
- 認証: 必要(Bearerトークン)
ハンドラー: deleteAttributeGroup
, deleteAttributeTerminator
バリデーター: verifyAuthentication
(getBearerTokenInfo), validateResourceAccess
(['admin'], getBearerTokenInfo)
使用方法:
import { routes } from '@nodeblocks/backend-sdk';
// Expressアプリでルートを登録
app.use('/api', routes.deleteAttributeRoute);
🔗 関連ドキュメント
- 属性スキーマブロック - 属性データ検証と契約
- 属性ハンドラーブロック - 属性ビジネスロジック機能
- 属性フィーチャーブロック - 属性コンポーズド機能