10. Web Sunucuları

Ağ bölümleri kamerayı ağa bağladı ve ona üzerinden konuşacağı soketler verdi (Ağ İletişimi). Peki şimdi ne olacak? Çoğu kamera uygulaması iki şeye indirgenir – kameranın gördüğünü dünyaya açmak ve ağdaki diğer şeylerin söylediklerine tepki vermek. HTTP bu konuşmanın gerçekleştiği yoldur ve her iki yönde de çalışır:

  • Bir sunucu olarak kamera, ağdaki telefonlardan, tarayıcılardan ve diğer cihazlardan gelen isteklere yanıt verir. microdot çerçevesi kameranın sunucusudur.

  • Bir istemci olarak kamera, yüklemek, getirmek veya eşgüdüm sağlamak için bulut hizmetlerine ulaşır. requests modülü kameranın istemcisidir.

Önümüzdeki 14 bölüm boyunca, her ikisini de kullanan çalışan tek bir kamera uygulaması oluşturacağız.

Bir arka bahçe hareket-tetiklemeli kamerası bahçedeki bir direğin üzerinde durur, neler olup bittiğini görür ve sahibine ilginç olan her şeyi bildirir. Kamerayı tek rotalı bir “Ben canlıyım” sunucusundan gönderilebilir bir şeye dönüştüreceğiz: sahibinin telefonuna canlı önizleme, eşik kaydırıcısı ve olay günlüğü olan bir gösterge paneli, hareket tetiklendiğinde anlık bildirimler, oturum açma, HTTPS ve tetiklenen her çerçevenin bulut arşivi.

Her bölüm bir özellik ekler. Kod örnekleri önceki bölümlerin yerinde olduğunu varsayar – tüm betiği her seferinde yeniden yapıştırmıyoruz.

Telefon veya dizüstü bilgisayar, gösterge paneli, SSE olayları ve WebSocket komutları için kameraya HTTPS üzerinden konuşur; kamera ise dışarıya bir bulut arşivine HTTPS POST üzerinden konuşur.