🛠️ ユーティリティ
Nodeblocks SDKは、堅牢で保守可能なバックエンドサービスの構築を支援する包括的なユーティリティ関数セットを提供します。これらのユーティリティはカテゴリ別に整理され、SDK全体で使用される関数型プログラミングパターンとシームレスに動作するよう設計されています。
🔐 認証ユーティリティ
安全なAPIエンドポイントのための包括的な認証とトークン管理ユーティリティ:
getBearerTokenInfo
: Authorizationヘッダーからのデフォルトベアラートークン認証getCookieTokenInfo
: Webアプリケーション用のCookieベーストークン認証generateUserAccessToken
: セキュリティ検証付きユーザーアクセストークン作成generateAppAccessToken
: サービス間通信用アプリアクセストークン作成generateRefreshToken
: セッション管理用リフレッシュトークン作成generateOnetimeToken
: 一時アクセス用ワンタイムトークン作成
🆔 エンティティユーティリティ
自動フィールド生成によるデータベースエンティティの作成と管理のための必須ユーティリティ:
createBaseEntity
:id
、createdAt
、updatedAt
フィールドを自動生成してエンティティを作成updateBaseEntity
: 自動updatedAt
タイムスタンプでエンティティを更新- UUID生成: エンティティID用の自動UUID v4生成
🔧 コンポジションユーティリティ
ハンドラーの構成、非同期操作の処理、複雑なビジネスロジックパイプラインの構築のための必須ユーティリティ:
compose
: 複数の関数を単一のパイプラインに結合lift
: 通常の関数をResult型で動作するように変換flatMap
: Resultを返す同期操作をチェーンflatMapAsync
: Resultを返す非同期操作をチェーン
🎭 ハンドラーラッパー
任意のハンドラーに適用できる横断的関心事とミドルウェア的ユーティリティ:
withLogging
: 任意の関数に包括的なログを追加withPagination
: データベース操作に自動ページネーションを追加
🔧 共通ユーティリティ
一般的な操作のための汎用ユーティリティ関数:
generateUUID
: UUID v4文字列を生成isObject
: 値がオブジェクト型かどうかをチェック- 型ガード: 型チェックと検証のためのヘルパー関数
📝 ログユーティリティ
構造化ログのためのPino事前設定ログセットアップ:
nodeblocksLogger
: Pretty フォーマッティング付き事前設定PinoログnodeblocksHTTPLogger
: HTTPリクエスト/レスポンスログミドルウェア- Logger型: ログ統合のためのTypeScript型
🔄 近日追加予定
さらなるユーティリティカテゴリがここに追加されます:
- 検証ユーティリティ: 共通検証パターンのヘルパー関数
- HTTPユーティリティ: リクエスト/レスポンスヘルパーとミドルウェアユーティリティ
- データベースユーティリティ: 共通データベース操作ヘルパー