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

🚀 プロフィール機能

プロフィール機能は、NodeBlocksアプリケーションでプロフィール関係管理操作のための完全な事前合成機能を提供します。これらの機能は、スキーマとルートを組み合わせて、適切な検証、認証、エラー処理を含む使用可能なAPIエンドポイントを作成します。


🎯 概要

プロフィール機能は以下の目的で設計されています:

  • 完全なAPIエンドポイントの提供 - プロフィール関係管理操作のため
  • スキーマとルートの組み合わせ - 検証された操作のため
  • 認証と認可チェックの自動含める
  • 関数合成パターンのサポート
  • ロギングとエラー管理のシームレスな処理
  • ソーシャル関係のサポート - フォロー、組織フォロー、製品いいねを含む

📋 機能構造

各プロフィール機能は一貫した合成パターンに従います:

  • Schema: 入力データとパラメータを検証
  • Route: ブロック付きHTTPエンドポイントを提供
  • 構成: compose関数を使用してスキーマとルートを組み合わせ

🔧 利用可能なプロフィール機能

createProfileFollowFeature

スキーマ検証とルーティングを含むプロフィールフォロー作成機能。

目的: 自動重複防止、検証、適切なエラー処理を含む完全なプロフィールフォロー作成機能を提供します。

構成:

  • Schema: createProfileFollowSchema - プロフィールフォローリクエストパスパラメータを検証
  • Route: createProfileFollowRoute - PUT /profiles/:profileId/profile-follows/:followProfileId フォロー作成ハンドラー付き

使用例:

import { features } from '@nodeblocks/backend-sdk';

// With database configuration
app.use('/api', defService(partial(features.createProfileFollowFeature, [{ dataStores: db }])));

API Endpoint: PUT /api/profiles/:profileId/profile-follows/:followProfileId


deleteProfileFollowFeature

スキーマ検証とルーティングを含むプロフィールフォロー削除機能。

目的: 検証と適切なエラー処理を含む完全なプロフィールフォロー削除(フォロー解除)機能を提供します。

構成:

  • Schema: deleteProfileFollowSchema - プロフィールフォロー削除リクエストパスパラメータを検証
  • Route: deleteProfileFollowRoute - DELETE /profiles/:profileId/profile-follows/:followProfileId フォロー削除ハンドラー付き

使用例:

import { features } from '@nodeblocks/backend-sdk';

// With database configuration
app.use('/api', defService(partial(features.deleteProfileFollowFeature, [{ dataStores: db }])));

API Endpoint: DELETE /api/profiles/:profileId/profile-follows/:followProfileId


getProfileFollowersFeature

スキーマ検証とルーティングを含むプロフィールフォロワー取得機能。

目的: 検証、ページネーション、アバター正規化を含む完全なプロフィールフォロワー取得機能を提供します。

構成:

使用例:

import { features } from '@nodeblocks/backend-sdk';

// With database configuration
app.use('/api', defService(partial(features.getProfileFollowersFeature, [{ dataStores: db }])));

API Endpoint: GET /api/profiles/:profileId/followers


createOrganizationFollowFeature

スキーマ検証とルーティングを含む組織フォロー作成機能。

目的: 検証と適切なエラー処理を含む完全な組織フォロー作成機能を提供します。

構成:

使用例:

import { features } from '@nodeblocks/backend-sdk';

// With database configuration
app.use('/api', defService(partial(features.createOrganizationFollowFeature, [{ dataStores: db }])));

API Endpoint: PUT /api/profiles/:profileId/organization-follows/:followOrganizationId


deleteOrganizationFollowFeature

スキーマ検証とルーティングを含む組織フォロー削除機能。

目的: 検証と適切なエラー処理を含む完全な組織フォロー削除機能を提供します。

構成:

使用例:

import { features } from '@nodeblocks/backend-sdk';

// With database configuration
app.use('/api', defService(partial(features.deleteOrganizationFollowFeature, [{ dataStores: db }])));

API Endpoint: DELETE /api/profiles/:profileId/organization-follows/:followOrganizationId


createProductLikeFeature

スキーマ検証とルーティングを含む製品いいね作成機能。

目的: 検証と適切なエラー処理を含む完全な製品いいね作成機能を提供します。

構成:

  • Schema: createProductLikeSchema - 製品いいね作成リクエストパスパラメータを検証
  • Route: createProductLikeRoute - PUT /profiles/:profileId/product-likes/:likeProductId いいね作成ハンドラー付き

使用例:

import { features } from '@nodeblocks/backend-sdk';

// With database configuration
app.use('/api', defService(partial(features.createProductLikeFeature, [{ dataStores: db }])));

API Endpoint: PUT /api/profiles/:profileId/product-likes/:likeProductId


deleteProductLikeFeature

スキーマ検証とルーティングを含む製品いいね削除機能。

目的: 検証と適切なエラー処理を含む完全な製品いいね削除機能を提供します。

構成:

  • Schema: deleteProductLikeSchema - 製品いいね削除リクエストパスパラメータを検証
  • Route: deleteProductLikeRoute - DELETE /profiles/:profileId/product-likes/:likeProductId いいね削除ハンドラー付き

使用例:

import { features } from '@nodeblocks/backend-sdk';

// With database configuration
app.use('/api', defService(partial(features.deleteProductLikeFeature, [{ dataStores: db }])));

API Endpoint: DELETE /api/profiles/:profileId/product-likes/:likeProductId


🔗 関連ドキュメント