
機能:
HTTPキャッシング
HTTPキャッシング
GraphQLはPOSTでクエリを送信するため、通常はサーバーサイドやクライアントとサーバー間の中間段階(CDNなど)でキャッシュすることができず、クライアントサイドのアプリケーションにキャッシュレイヤーを追加する必要があり、処理が遅くなり複雑になります。
しかし、GETでアクセスする場合(パーシステッドクエリでは自然な方式であり、それ以外では?query=...パラメータを使用)、そのレスポンスは標準的なHTTPキャッシングによってキャッシュすることができます。
各フィールドまたはディレクティブをどのくらいの期間キャッシュするかを定義でき、レスポンスにはCache-Controlヘッダーが含まれます。そのmax-age値は、リクエストされたクエリ内のすべてのフィールドとディレクティブから自動的に計算されます(ユーザー状態が含まれる場合はno-store)。
