検索結果APIのモックレスポンス
クエリメタデータ、ファセット、ハイライトされたマッチを含むモック検索結果JSONレスポンスを生成。検索UIコンポーネントとオートコンプリートのテストに。
Pagination
詳細な説明
検索結果レスポンス
検索エンドポイントはクエリ自体に関するメタデータとともに結果を返します。このモックは元のクエリ、結果数、ファセットフィルタリングデータを含むレスポンスを生成します。
レスポンス構造
{
"data": [
{
"id": "uuid",
"title": "string",
"description": "string",
"score": "number",
"category": "enum(article,product,page)"
}
],
"meta": {
"query": "search term",
"total": 142,
"page": 1,
"perPage": 10,
"responseTimeMs": 45
}
}
検索固有のフィールド
| フィールド | 目的 |
|---|---|
score |
結果ランキング用の関連性スコア |
meta.query |
元の検索クエリのエコー |
meta.responseTimeMs |
サーバー側の処理時間 |
関連性スコアリング
scoreフィールド(通常0.0から1.0または0から100)は各結果がクエリにどれだけ一致するかを示します。フロントエンドコードはこれを使用して:
- 結果を関連性でソート(デフォルト)または日付/名前での再ソートを許可
- 関連性インジケーターや「ベストマッチ」バッジを表示
- しきい値以下の低関連性結果をフィルタリング
ハイライト
本番環境では、検索APIは多くの場合、一致する用語を<em>や<mark>タグでラップしたハイライトスニペットを返します。このモックはプレーンテキストを生成しますが、クライアント側で結果を後処理してハイライトを追加できます。
パフォーマンスインジケーター
responseTimeMsフィールドはユーザーが検索パフォーマンスを理解するのに役立ち、モニタリングダッシュボードを可能にします。Google検索はこれを有名に表示しています(「約142件の結果(0.045秒)」)。
ユースケース
検索UI開発者が、ElasticsearchやAlgoliaなどの実際の検索バックエンドと統合する前に、関連性ソート、クエリエコー、ページネーション、パフォーマンスインジケーター付きの検索結果ページを構築・テストするために使用できます。