1.
Define 'under-fetching' in the context of REST APIs and explain why it often leads to multiple requests from the client.
2.
Explain how GraphQL solves the problem of under-fetching. Provide a hypothetical REST API example request/response and a corresponding GraphQL query/response to illustrate the solution.
3.
Define 'over-fetching' in the context of REST APIs and explain why it results in huge JSON payloads with unnecessary data.
4.
Explain how GraphQL solves the problem of over-fetching. Provide a hypothetical REST API example request/response and a corresponding GraphQL query/response to illustrate the solution.