The GraphQL core specification leaves transport undefined. The GraphQL over HTTP draft requires POST support, makes GET optional, and limits GET to query operations. Clients include application/graphql-response+json in Accept, and conforming servers support that response media type.
The demo accepts a GET query and POST mutation but rejects a GET mutation. This is still a Stage 2 draft and may change, so check actual server behavior and client compatibility.
When to use
Use it when aligning HTTP behavior across GraphQL clients and servers.