メインコンテンツまでスキップ
バージョン: 0.9.0 (最新)

🔧 共通ブロック

共通ブロックは、Nodeblocksアプリケーションで複数のエンティティにわたって使用できる再利用可能なスキーマ、ルート、ハンドラー、機能を提供します。これらのブロックは、一貫性を維持し、重複を減らすために共有および再利用されるように設計されています。


🎯 概要

共通ブロックは以下の目的で設計されています:

  • 複数のエンティティにわたる再利用可能なコンポーネントの提供
  • データ検証とAPIパターンの一貫性の維持
  • 共有スキーマとユーティリティによるコード重複の削減
  • ページネーションやレスポンスなどの共通操作の標準化のサポート
  • エンティティ固有のブロックとの合成を可能にする

📦 ブロックタイプ

🔍 スキーマ

共通データ検証用のJSONスキーマ定義:

  • 住所スキーマ: 異なる形式と地域の住所検証
  • ページネーションスキーマ: 標準化されたページネーションパラメータとメタデータ
  • レスポンススキーマ: 共通のAPIレスポンス構造
  • ユーティリティスキーマ: 共通操作用の再利用可能なユーティリティスキーマ

共通スキーマを表示 →

🔧 ブロック

ドメイン間で共有される再利用可能なロジック:

  • redirectTo: ルートチェーンでHTTPリダイレクトを発行
  • generateRandomPassword: 安全なランダムパスワードを作成
  • normalizeRawDocument: APIレスポンスからMongoDB _id フィールドを削除
  • normalizeDocuments: ドキュメント配列からMongoDB _id フィールドを削除
  • normalizeEmptyBody: APIハンドラー用の空のレスポンスボディを正規化

共通ブロックを表示 →

バリデーター

ドメイン間で再利用する汎用検証関数:

  • checkIdentityType: アイデンティティタイプ設定に基づいてアクセスを制限
  • validateResourceAccess: 任意のリソースタイプ用の汎用アクセス制御バリデーター(非推奨)
  • some: ORセマンティクスでバリデーターを合成
  • requireParam: パラメータ要件バリデーターを作成するファクトリー関数
  • isUUID: UUID形式バリデーターを作成するファクトリー関数
  • isNumber: 数値形式バリデーターを作成するファクトリー関数
  • ownsResource: 認証されたユーザーがデータベース内のリソースを所有しているかチェック

共通バリデーターを表示 →


🔗 関連ドキュメント