-
La base de datos debe desarrollarse con MySQL, tener al menos 4 tablas, con al menos 4 diferentes tipos de datos. (10 puntos)
-
Entre las tablas al menos deberá haber una relación “uno a muchos”. (10 puntos)
-
A través del servidor levantado con Node y Express se debe poder realizar al menos un tipo de alta. (POST) (15 puntos)
-
De la misma forma se debe poder realizar modificaciones de los registros. (PUT) (15 puntos)
-
Se debe poder acceder a los registros de la tabla. (GET) (15 puntos)
-
Se debe poder realizar borrado físico de los datos. (DELETE) (15 puntos)
-
El trabajo práctico deberá subirse a un servidor online y compartirse mediante un repositorio de Git. (Mandatorio) (5 puntos)
-
La página deberá subirse a un servidor on-line para poder ser navegada por el Docente. Ejemplo: Netlify o similar. (Mandatorio) (5 puntos)
-
Se valorará la aplicación de un token o método de autenticación. (5 puntos)
-
El backend debe estar integrado con un frontend. (5 puntos)
- express: Fast, unopinionated, minimalist web framework for Node.js.
- dotenv: Dotenv is a zero-dependency module that loads environment variables from a
.env
file intoprocess.env
. - mysql2: MySQL client for Node.js with focus on performance.
- standard: JavaScript Standard Style.
- Yo uso npm como gestor de dependencias y empaquetador.
npm install
Edita el archivo .env_template
y renombralo a .env.dev
para utilizar tus variables de entorno o a .env.prod
para utilizar las credenciales de producción. Estos se encuentran incluidos en el archivo .gitignore
para evitar transmitir datos sensibles.
npm run dev
- Abre http://localhost:8090/noticias en tu navegador para ver el resultado
El archivo api.http
define varios endpoints de prueba con distintos verbos http para testear el funcionamiento de la api haciendo uso de un modelo basado en JSON.
Se puede usar la extension Rest Client para accederlas directamente desde el archivo sin necesidad de instalar otras soluciones como Postman o Thunder Client.
Recomiendo mucho usar las siguientes extensiones:
StandardJS - JavaScript Standard Style, Prettier-Standard - JavaScript formatter y Error Lens trabajan muy bien en conjunto.
Standard es una convencion de formato de codigo muy utilizada, incluida en como dependencia de desarrollo en este proyecto, por lo que StandardJS va a reconocer y marcar errores de formateo y sitnaxis dentro del proyecto.
Prettier-Standad es un formateador de codigo que sigue las mismas reglas, super util para adaptarnos a ellas.
Por otro lado Error Lens es una extension de lo mas recomendada, no solo para trabajar con Standard, si no tambien con cualquier Linter ya que en lugar de mostrar los mensajes en la ventana de problemas, los muestra directamente en el codigo, facilitando mucho encontrarlos.
ENV, es un marcador de sintaxis con soporte para archivos .env.
Better Comments nos permite usar comentarios con distintos formatos, sin afectar la visualizacion de estos en entornos donde no esté instalado.
Comando | Acción | |
---|---|---|
⚙️ | npm start |
Lanza el servidor en modo producción conectando el mismo a la base de datos principal. |
⚙️ | npm run dev |
Lanza un servidor de desarrollo local en localhost:8090 e intenta conectar a la base de datos local con el flag watch para observar cambios en el codigo del servidor y evitar tener que relanzarlo con cada nuevo guardado. |