OpenAPI-to-GraphQL: a interface para qualquer API REST
Atualmente são várias as tecnologias na área da programação que simplificam a construção e desenvolvimento de aplicações e plataformas digitais. Se acompanha a área da programação de serviços/aplicações certamente que já ouviu falar no termo “Web Services” e API (Application Programming Interface).
No último artigo ensinamos a criar rapidamente uma API com o loopback da IBM e mongoDB. Hoje vamos ver como usar o GraphQL.
O LoopBack é uma framework para criação de API Node.js que permite criar funcionalidades de back-end. Esta framework funciona como um assistente de criação da API. O programador facilmente pode definir uma modelo de dados, criar controladores, ligar a sua API com bases de dados, etc - pode saber mais aqui.
Hoje vamos mostrar como podem instalar o GraphQL para criar uma interface para qualquer API REST. De relembrar que REST — REpresentational State Transfer é um modelo de arquitetura que usa o protocolo HTTP para comunicação para GET, POST, PUT e DELETE. Existem várias representações para apresentar um recurso como, por exemplo, XML, JSON, sendo que este último é o mais usado. Saber mais aqui.
Como instalar e usar o GraphQL com o loopback?
A instalação do GraphQL é extremamente simples. O OpenAPI-to-GraphQL pode ser usado como uma biblioteca ou uma interface de linha de comando (CLI). Para instalar a CLI OpenAPI-to-GraphQL, basta executar o comando: npm i -g openapi-to-graphql-cli
Em seguida devem executar a vossa app e abrir o endereço http://127.0.0.1:3000/openapi.json e obter o ficheiro openapi.json.
Depois devem executar o comando openapi-to-graphql openapi.json sendo que o output deverá ser algo do tipo.
O próximo passo é abrir o browser e inserir o seguinte endereço: http://127.0.0.1:3000/graphql e começar a fazer as queries que pretendem à vossa API Rest.
Para melhor perceberem como tudo funciona, vejam o seguinte vídeo.
Tal como o GraphQL existem muitas outras ferramentas simples de usar para integração e interação com a nossa API. Se conhecerem outras ferramentas, partilhem neste artigo.
Leia também...
Este artigo tem mais de um ano
Muito interressante estes artigos essa relationado com o rest.