- Node.js v21.0.5
- Serverless instalado
- Credenciales de AWS configuradas para despliegue
Sigue los siguientes pasos para ejecutar el proyecto:
-
Instalar las dependencias:
npm install
-
Despliega el proyecto utilizando Serverless:
serverless deploy
La documentación del API se encuentra disponible en Swagger
Esta ruta permite crear un nuevo recurso en DynamoDB.
-
Body:
{ "resource": "people", "id": 1 } -
Respuesta exitosa (
201 Created):{ "message": "Resource saved successfully" }
Esta ruta obtiene uno o varios recursos almacenados en la base de datos.
-
Query Params:
resource: Tipo de recurso a buscar (e.g.,people,films).id(opcional): El ID del recurso que se desea obtener. Si no se proporciona, se devuelven todos los recursos en la base de datos.
-
Respuesta sin ID (
200 OK):{ "message": "Resources fetched successfully", "data": [ { "id": 1, "resourceType": "people", "data": { "nombre": "Luke Skywalker", "año_de_nacimiento": "19BBY", "género": "male", "naves_estelares": [ "https://swapi.py4e.com/api/starships/12/", "https://swapi.py4e.com/api/starships/22/" ] // etc... } }, { "id": 2, "resourceType": "people", "data": { "nombre": "C-3PO", "año_de_nacimiento": "112BBY", "género": "n/a", "naves_estelares": [] // etc... } } ] } -
Respuesta con ID (
200 OK):{ "message": "Resources fetched successfully", "data": { "id": 1, "resourceType": "people", "data": { "nombre": "Luke Skywalker", "año_de_nacimiento": "19BBY", "género": "male", "naves_estelares": [ "https://swapi.py4e.com/api/starships/12/", "https://swapi.py4e.com/api/starships/22/" ] // etc... } } }
Para ejecutar las pruebas unitarias se ejecuta el siguiente comando
npx jestLas pruebas se encuentras definidas en ./__tests__