1
、サーバーは私が既にキャッシュしているものを知らない)。ここでキャッシュを活用しようとするとどのような戦略が使えますか?キャッシュネストされた結果
私が考えることができるのは上のクエリです。私はIDフィールドを要求し、名前と写真を別々に照会してそれらをバッチしようとします。
、サーバーは私が既にキャッシュしているものを知らない)。ここでキャッシュを活用しようとするとどのような戦略が使えますか?キャッシュネストされた結果
私が考えることができるのは上のクエリです。私はIDフィールドを要求し、名前と写真を別々に照会してそれらをバッチしようとします。
返される同じ結果オブジェクトグラフ内のオブジェクトを共有するためのGraphQLに組み込まれた方法はありません。あなたは実際にあなた自身の質問に答えました。結果のグラフをIDで正規化することで、クライアントに送信するJSONの量を減らすことができます。ただし、クライアントはデータを別の方法で要求する必要があります。たとえば、
query($id: Int) {
post(id: $id) {
likes {
id
}
}
likesByPostId(postId: $id) {
id
name
photo
}
}
GraphQLでは、クライアントがデータフェッチを最適化する方法を決定するようにしました。サーバーは、クライアントが要求する形状のデータを単純に返します。だからあなたは本当にクライアントを決定することはできません。