While REST APIs are amongst the most popular when it comes to client consumption, they are not the only way to consume data and they aren’t always the best way. For example, having to deal with many endpoints or endpoints that return massive amounts of data that you don’t need are common. This is where GraphQL comes in.
With GraphQL you can query your API in the same sense that you would query a database. You write a query, define the data you want returned, and you get what you requested. Nothing more, nothing less. I actually had the opportunity to interview the co-creator of GraphQL on my podcast in an episode titled, GraphQL for API Development, and in that episode we discuss GraphQL at a high level.
You might remember that I wrote a tutorial titled, Getting Started with GraphQL Development Using Node.js which focused on mock data and no database. This time around we’re going to take a look at including MongoDB as our NoSQL data layer.Read More
In a recent tutorial I demonstrated querying a GraphQL API from a Vue.js web application, but what if we wanted to explore something with an Android or iOS mobile application?
In this tutorial we’re going to see how to create an iOS and Android mobile application using NativeScript and Angular and then query a GraphQL API from that application using numerous methods.Read More
So how do you interact with a GraphQL API using something like Angular, React, or Vue.js?
The book was designed to help make you successful at modeling and validating your data, designing queries, and anything related to creating web services.Read More
As you probably know, I’ve been doing a lot with GraphQL recently. I’ve released tutorials that include Java with GraphQL, Node.js with GraphQL, as well as Golang with GraphQL, but I’ve only ever demonstrated testing those GraphQL APIs with cURL. If you’ve ever used cURL for anything, not specific to GraphQL, you’ll know it works well, but it isn’t the most friendly tool available.
We’re going to look at an alternative method to testing GraphQL queries using a convenient Google Chrome extension called ChromeiQL.Read More
I am pleased to announce that the latest episode of The Polyglot Developer Podcast is available for download! If you’ve been keeping up with the blog recently, I’ve published quite a bit of content around GraphQL as I personally believe it to be the future for API development. Being able to access related and unrelated data on demand through a single endpoint is huge for the people consuming your data and huge for the developers creating the data because of specific model definitions.
In this episode titled, GraphQL for API Development, I’m joined by Lee Byron, one of the co-creators of GraphQL at when he worked at Facebook. Lee gives us all the details on how GraphQL came to be, why it is huge for development, and how to use it successfully in your next application.Read More
If you’ve been keeping up, you’ll remember I released a very popular tutorial titled, Getting Started with GraphQL Using Golang which was more or less a quick-start to using GraphQL in your web applications. Since then, I demonstrated an alternative way to work with related data in a tutorial titled, Maintain Data Relationships Through Resolvers with GraphQL in a Golang Application. Both articles are great, but they left out an important feature that most modern APIs must have. Most modern APIs must have a way to authorize particular users to access only certain pieces of data and not all data offered by the service.
One of the most popular ways to enforce some kind of authorization in an application is through the use of JSON web tokens (JWT). Users authenticate with a service and the service responds with a JWT to be used in every future request so that way the password is kept safe. The service can then validate the JWT to make sure it is correct and not expired.
We’re going to see how to protect particular GraphQL properties as well as entire queries using JSON web tokens and the Go programming language.Read More