Segundo o site RedHat, "o gateway de API é uma ferramenta de gerenciamento de APIs que fica entre o cliente e uma coleção de serviços de back-end.
Ele funciona como um proxy inverso, que aceita todas as chamadas da interface de programação de aplicações (API), agrega os vários serviços necessários para realizá-las e retorna o resultado apropriado.
A maioria das APIs corporativas é implantada por meio de gateways de API. Esses gateways normalmente gerenciam tarefas comuns que são usadas em um sistema de serviços de API, como autenticação de usuários, limitação de taxa e estatísticas".
Esse projeto para estudo surgiu apenas para testar uma criação de um gateway utilizando o express, para ter mais liberdade em tudo o que ocorre na aplicação e como foi desenvolvido.
As principais ferramentas utilizadas:
Antes de começar, você vai precisar ter instalado em sua máquina as seguintes ferramentas: Git, Node.js e Yarn. Além disto é bom ter um editor para trabalhar com o código como VSCode
Crie um arquivo na raiz chamado config.yml e passe as configurações desejadas.
nameApplication: API Gateway
hostApplication: http://localhost
config:
port: 3333
enabledMorgan: true
security:
enabledJSON: true
enabledHelmet: true
services:
- nameRoute: users
url: http://localhost:3001
- nameRoute: products
url: http://localhost:3002
# Clone este repositório
$ git clone https://github.com/lucas-eduardo/api-gateway-express
# Acesse a pasta do projeto no terminal/cmd
$ cd api-gateway-express
# Instale as dependências
$ yarn install
# Configure o arquivo config.yml conforme o exemplo.
# Execute a aplicação em modo de desenvolvimento
$ yarn dev
# O servidor inciará na porta:3333 - acesse http://localhost:3333