API Gateway

API Gateway Express

GitHub language count Repository size Made by Lucas Eduardo GitHub last commit License Stargazers

ℹ️ O que é API Gateway?

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".

💻 Sobre o projeto

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.

🛠 Tecnologias

As principais ferramentas utilizadas:

Pré-requisitos

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

Configuração Yml

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

🎲 Rodando a aplicação

# 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