/jwt-authentication-nest.js

Este repositorio contiene una API de autenticación utilizando JWT (JSON Web Tokens) y MongoDB como base de datos, implementada con NestJS.

Primary LanguageTypeScript

API de Autenticación con JWT y MongoDB

Este repositorio contiene una API de autenticación utilizando JWT (JSON Web Tokens) y MongoDB como base de datos, implementada con NestJS.

La API permite a los usuarios registrarse e iniciar sesión en la aplicación. Al registrarse o iniciar sesión con éxito, se devuelve un token de acceso JWT que puede utilizarse para autenticarse en rutas protegidas.

Características

  • Registro de usuarios
  • Inicio de sesión de usuarios
  • Autenticación y autorización con JWT
  • Integración con MongoDB
  • Documentación de API con Swagger

Requisitos previos

  • Node.js
  • MongoDB

Instalación

  1. Clona este repositorio:
git clone https://github.com//api-auth-jwt-mongodb.git
  1. Cambia al directorio del proyecto:
cd api-auth-jwt-mongodb
  1. Instala las dependencias:
npm install
  1. Configura las variables de entorno. Copia el archivo .env.example a .env y actualiza las variables según sea necesario:
cp .env.example .env
  1. Inicia la API:
npm run start

La API estará disponible en http://localhost:3000. Puedes acceder a la documentación de Swagger en http://localhost:3000/api.

Uso

Registro

Realiza una petición POST a /auth/register con los siguientes parámetros:

  • username: Nombre de usuario (string)
  • email: Correo electrónico (string, formato de correo electrónico)
  • password: Contraseña (string)

Si el registro es exitoso, recibirás un token de acceso JWT.

Inicio de sesión

Realiza una petición POST a /auth/login con los siguientes parámetros:

  • email: Correo electrónico (string, formato de correo electrónico)
  • password: Contraseña (string)

Si el inicio de sesión es exitoso, recibirás un token de acceso JWT.

Autenticación y autorización

Para acceder a rutas protegidas, incluye el token de acceso JWT en el encabezado de autorización de tus solicitudes como un Bearer Token:

Authorization: Bearer 

Licencia

Este proyecto se encuentra bajo la Licencia MIT.