GraphQLスタイルのモックJSONレスポンス

データラッパーとオプションのエラー配列を含むGraphQL規約に従ったモックレスポンスを生成。GraphQLクライアント統合のテストに。

Nested Data

詳細な説明

GraphQLスタイルレスポンス

GraphQLレスポンスはGraphQL仕様で定義された特定の構造に従います。REST APIを構築している場合でも、多くの最新APIが同様の規約を採用しているため、このパターンを理解することは価値があります。

レスポンス構造

{
  "data": {
    "user": {
      "id": "uuid",
      "name": "string",
      "email": "email",
      "posts": [
        {
          "id": "uuid",
          "title": "string",
          "comments": [
            { "id": "uuid", "body": "string" }
          ]
        }
      ]
    }
  }
}

GraphQL規約

フィールド 説明
data 成功したレスポンスペイロード。クエリの形状に一致
errors クエリが部分的または完全に失敗した場合のオプションのエラーオブジェクト配列
extensions オプションのメタデータ(クエリの複雑さ、実行時間など)

部分的エラー

レスポンスが成功かエラーかのどちらかであるRESTとは異なり、GraphQLはdataerrorsを同時に返すことができます。例えば、ユーザーデータとその投稿のクエリは、ユーザーについては成功するが投稿については失敗する可能性があります:

{
  "data": {
    "user": { "id": "123", "name": "Alice" },
    "posts": null
  },
  "errors": [
    { "message": "Posts service unavailable", "path": ["posts"] }
  ]
}

GraphQLクライアントのテスト

このモックはApollo Client、urql、またはRelay統合のテストに役立ちます。クライアントがネストされたデータ構造を正しく処理し、キャッシュを更新し、部分的エラーを処理することを検証できます。

ユースケース

RESTからGraphQLへの移行やBFF(Backend for Frontend)層の構築を行う開発者が、レスポンスの形状をプロトタイプし、GraphQLクライアント構成をテストするために使用できます。

試してみる — API Response Mocker

フルツールを開く