Frontend y backend
El frontend es lo que se ejecuta en el navegador (la interfaz). El backend es el programa que corre en un servidor: guarda los datos, aplica la lógica de negocio y responde a las peticiones del frontend.
Con Node.js puedes escribir ese servidor en JavaScript, el mismo lenguaje del frontend. Por eso "full-stack JS".
HTTP: petición y respuesta
Cliente y servidor hablan por HTTP. El cliente envía una petición (request) y el servidor devuelve una respuesta (response).
Una petición tiene:
- un método:
GET(leer),POST(crear),PUT(actualizar),DELETE(borrar). - una ruta:
/usuarios,/productos/5. - opcionalmente un cuerpo (body) con datos (en POST/PUT).
Una respuesta tiene:
- un código de estado:
200(OK),201(creado),404(no encontrado),400(petición inválida). - un cuerpo con los datos (normalmente JSON).