10. Servidores web¶
Los capítulos de redes pusieron la cámara en la red y le dieron sockets a través de los cuales comunicarse (Redes). ¿Y ahora qué? La mayoría de las aplicaciones de cámara se reducen a dos cosas – exponer lo que la cámara ve al mundo y reaccionar a lo que dicen otras cosas en la red. HTTP es la forma en que ocurre esa conversación, y funciona en ambas direcciones:
Como servidor, la cámara responde a peticiones de teléfonos, navegadores y otros dispositivos de la red. El framework
microdotes el servidor de la cámara.Como cliente, la cámara se conecta a servicios en la nube para subir, obtener o coordinar. El módulo
requestses el cliente de la cámara.
A lo largo de los siguientes 14 capítulos construiremos una sola aplicación de cámara en funcionamiento que ejercite ambos roles.
Una cámara de patio con disparo por movimiento se sitúa en un poste en el jardín, ve lo que ocurre y avisa al propietario de cualquier cosa interesante. Haremos crecer la cámara desde un servidor de una sola ruta de tipo «estoy vivo» hasta algo entregable: vista previa en vivo en el teléfono del propietario, un panel con un control deslizante de umbral y un registro de eventos, notificaciones push cuando se dispara el movimiento, inicio de sesión, HTTPS y un archivo en la nube de cada fotograma disparado.
Cada capítulo añade una sola característica. Los ejemplos de código asumen que los capítulos anteriores están en su sitio – no volvemos a pegar todo el script cada vez.
- 10.1. Tu primer endpoint
- 10.2. Devolver una captura
- 10.3. Transmisión en vivo – un solo espectador
- 10.4. Compartir un único bucle de captura entre varios espectadores
- 10.5. Una API de control para la cámara
- 10.6. Construir el panel de control
- 10.7. Enviar eventos al panel de control
- 10.8. Control bidireccional con WebSockets
- 10.9. Autenticación para clientes programáticos
- 10.10. Inicio de sesión para el panel de control
- 10.11. HTTPS – cifrado de transporte para el servidor
- 10.12. CORS y CSRF
- 10.13. Subir fotogramas activados a la nube
- 10.14. Resumen