Un servidor web, es un programa, instalado generalmente en una computadora especializada, que se encarga de responder las peticiones que recibe vía el protocolo HTTP; generalmente (pero no siempre) de parte de un navegador web.
Generalmente, el principal trabajo de un servidor web es construir y enviar páginas web en formato HTML, aunque además, también envía archivos de utilidad como imágenes, hojas de estilo, archivos javaScript, PDF’s, entre otros.
De manera simple, el flujo de funcionamiento de un servidor web es el siguiente:
- El usuario solicita un archivo a través de un cliente, que puede ser un navegador web.
- El navegador web construye una solicitud para dicho archivo, y la envía a través del protocolo HTTP a la computadora
- La petición llega a la computadora que contiene el programa, a esta computadora también se le conoce como el servidor.
- La computadora, a través del programa (servidor web) genera un archivo de respuesta para la petición correspondiente, este archivo se envía, de nuevo a través del protocolo http, de vuelta al cliente que hizo la solicitud.
- El cliente recibe el archivo respuesta, y se lo muestra al usuario.
Cabe mencionar que el cliente genera una nueva petición por cada archivo que desea solicitar, si una página contiene 2 imágenes, 1 archivo CSS y uno de JavaScript, hará 4 solicitudes al programa servidor.
El programa servidor contiene lógica que le permite definir qué archivo enviará, si ese archivo requiere de información de una base de datos, si dicha información debe ser procesada o transformada, etc.
En un servidor web, este programa se encarga de enviar y recibir datos, estos datos, además, deben ser enviados en un formato previamente definido.
-
Módulo 1 | 7 clases
Introducción
expand_more-
play_circle_outline
Clase 1
1.- Introducción al proyecto del curso
-
play_circle_outline
Clase 2
Requisitos previos para tomar este curso
-
play_circle_outline
Clase 3
Qué cubriremos en este curso
-
play_circle_outline
Clase 4
Descripción del proyecto
-
play_circle_outline
Clase 5
Configurar entorno de trabajo (Windows)
-
play_circle_outline
Clase 6
Configurar entorno de trabajo (MacOS)
-
play_circle_outline
Clase 7
Crea tu primer servidor web
-
-
Módulo 2 | 6 clases
Conceptos Fundamentales
expand_more-
play_arrow
Clase 1
Cómo funciona un servidor web.
-
play_circle_outline
Clase 2
Servidor de archivos estáticos
-
play_circle_outline
Clase 3
Enviar JSON
-
play_circle_outline
Clase 4
JSON Viewer para Chrome
-
play_circle_outline
Clase 5
Nodemon para recargar el servidor
-
play_circle_outline
Clase 6
Rutas POST y Postman
-
-
Módulo 3 | 10 clases
Bases de Datos y CRUDs
expand_more-
play_circle_outline
Clase 1
Generar app con Express
-
play_circle_outline
Clase 2
Recorridode una app generada por el Express Generator
-
play_circle_outline
Clase 3
Configurar la base de datos
-
play_circle_outline
Clase 4
Modelos en Mongoose
-
play_circle_outline
Clase 5
REST y Verbos HTTP
-
play_circle_outline
Clase 6
Crear lugares
-
play_circle_outline
Clase 7
Mostrar lugares
-
play_circle_outline
Clase 8
Mostrar un lugar
-
play_circle_outline
Clase 9
Actualizar lugar
-
play_circle_outline
Clase 10
Eliminar lugares
-
-
Módulo 4 | 15 clases
Más allá de lo básico
expand_more-
play_circle_outline
Clase 1
Crear rutas
-
play_circle_outline
Clase 2
Controladores
-
play_circle_outline
Clase 3
Paginación
-
play_circle_outline
Clase 4
Qué es un Middleware en Express
-
play_circle_outline
Clase 5
Middleware para búsqueda individual
-
play_circle_outline
Clase 6
Configurar cloudinary
-
play_circle_outline
Clase 7
Definir archivo con secretos
-
play_circle_outline
Clase 8
Subir imágenes a cloud
-
play_circle_outline
Clase 9
Subir imágenes pt 2
-
play_circle_outline
Clase 10
Mover imágenes a la nube
-
play_circle_outline
Clase 11
Guardar información de las imágenes en la base de datos
-
play_circle_outline
Clase 12
Generar SEO URLs
-
play_circle_outline
Clase 13
Evitar colisiones con las SEO URls
-
play_circle_outline
Clase 14
Cambiar búsqueda de ID a Slug
-
play_circle_outline
Clase 15
Manejo de parámetros
-
-
Módulo 5 | 6 clases
Autenticación de usuarios
expand_more-
play_circle_outline
Clase 1
Modelo de usuarios
-
play_circle_outline
Clase 2
Encriptar contraseñas con bcrypt
-
play_circle_outline
Clase 3
Crear usuarios
-
play_circle_outline
Clase 4
Generar Json Web Tokens
-
play_circle_outline
Clase 5
Iniciar sesión
-
play_circle_outline
Clase 6
Asignar al primer usuario permisos de administrador
-
-
Módulo 6 | 5 clases
Relaciones básicas uno a muchos
expand_more-
play_circle_outline
Clase 1
Agregar campo usuario a un lugar
-
play_circle_outline
Clase 2
Proteger rutas con autenticación
-
play_circle_outline
Clase 3
Crear lugares con un usuario
-
play_circle_outline
Clase 4
Virtuales para obtener los lugares que creé
-
play_circle_outline
Clase 5
Proteger rutas para usuarios propietarios
-
-
Módulo 7 | 9 clases
Relaciones muchos a muchos
expand_more-
play_circle_outline
Clase 1
Crear modelo Favoritos
-
play_circle_outline
Clase 2
CRUD Favoritos
-
play_circle_outline
Clase 3
Virtuales para relaciones muchos a muchos
-
play_circle_outline
Clase 4
Crear modelo de Visitas
-
play_circle_outline
Clase 5
Enums
-
play_circle_outline
Clase 6
CRUD de Visitas
-
play_circle_outline
Clase 7
Visitas a través de negocios
-
play_circle_outline
Clase 8
Visitas de un negocio
-
play_circle_outline
Clase 9
Visitas de un usuario
-
-
Módulo 8 | 11 clases
Seguridad en servicios web
expand_more-
play_circle_outline
Clase 1
Modelo Aplicaciones (Clientes)
-
play_circle_outline
Clase 2
Asignar valores random a secret y applicationId
-
play_circle_outline
Clase 3
Crear aplicaciones
-
play_circle_outline
Clase 4
Eliminar aplicaciones
-
play_circle_outline
Clase 5
Rutas exclusivas de administradores
-
play_circle_outline
Clase 6
Proteger rutas con secretos
-
play_circle_outline
Clase 7
Preflight en CORs
-
play_circle_outline
Clase 8
Proteger rutas con ApplicationId
-
play_circle_outline
Clase 9
Encabezados para CORs
-
play_circle_outline
Clase 10
Dominios enlazados para una aplicación
-
play_circle_outline
Clase 11
Proteger de dominios no autorizados
-