What you'll learn:
- Build a GraphQL server based on NodeJS, Express and Apollo Server
- Call GraphQL APIs from JavaScript using GraphQL-Request or Apollo Client
- Handle Authentication/Authorization, Caching, and more
- Receive real-time updates with GraphQL Subscriptions
More and more teams are choosing GraphQL instead of (or along with)RESTfor their webAPIs. GraphQL queries give clients great flexibility in the way they request data from the server, preventing issues suchoverfetching or underfetching of data, and allowingmultiple resources to be retrieved in a single request.
In this course you'll learn how to use GraphQL both on the server side and in client applications through practical examples in the form of full-stack JavaScript applications. You will be introduced to all the main GraphQL concepts like schema definition, Queries, Mutations, and Subscriptions, as well as to solution to common requirements such as handling authentication/authorization and client-side caching.
The examples use Apollo Server with Node.js and Express on the backend and React on the frontend, with GraphQL-Request first, then Apollo Client as GraphQL clients. GraphQL-WS is used for subscriptions.
The aim however is not just to cover specific GraphQL libraries, but to give you a more general understanding of the underlying concepts. For instance, GraphQL client libraries are introduced only after learning how to write a simple client "by hand", to make sure you understand the GraphQL over HTTP format.
This course assumes good knowledge of modern JavaScript, and ideally some familiarity with Node.js/Express and React.