Skip to content

guicod1ng/API-Node-POstgreSQL-Teste

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 API de Clientes

Node.js PostgreSQL JWT Deploy

API REST para gerenciamento de clientes com autenticação JWT, arquitetura em camadas e deploy em nuvem.


📸 Teste via Postman

preview


⚙️ Stack

Node.js • Express • PostgreSQL • JWT • bcrypt • Render • Neon


📌 Funcionalidades

  • Autenticação (registro e login)
  • CRUD de clientes
  • Rotas protegidas com JWT
  • Relacionamento usuário ↔ clientes
  • Acesso isolado por usuário
  • FOREIGN KEY com ON DELETE CASCADE

📁 Estrutura

src/
├── config/
├── controllers/
├── services/
├── routes/
└── middlewares/

🚀 Rodar local

npm install

.env

DATABASE_URL=postgresql://postgres:SENHA@localhost:5432/treino_db
JWT_SECRET=sua_frase_secreta

sql

CREATE TABLE usuarios (
  id SERIAL PRIMARY KEY,
  email VARCHAR(100) UNIQUE,
  senha VARCHAR(255)
);

CREATE TABLE clientes (
  id SERIAL PRIMARY KEY,
  nome VARCHAR(100),
  telefone VARCHAR(20),
  usuario_id INT REFERENCES usuarios(id) ON DELETE CASCADE
);
npm start

📡 Endpoints

Auth

  • POST /auth/registro
  • POST /auth/login

Clientes (JWT)

  • GET /clientes
  • POST /clientes
  • PUT /clientes/:id
  • DELETE /clientes/:id

🔐 Segurança

  • bcrypt (hash de senha)
  • JWT com expiração
  • Prepared Statements
  • .env protegido

🛡️ Rate Limiting

  • 100 requisições por IP a cada 15 minutos
  • Excedeu → erro 429

🌐 Deploy

Acesse em: https://api-clientes-jqkq.onrender.com

💡 Sobre o projeto

API desenvolvida para simular um sistema real de gerenciamento de clientes, com autenticação segura e estrutura escalável.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors