10. Web Server

Các chương về mạng đã đưa cam lên mạng và cung cấp socket để giao tiếp (Kết nối mạng). Bây giờ thì sao? Hầu hết các ứng dụng camera đều quy về hai việc -- hiển thị những gì cam thấy ra thế giớiphản ứng với những gì các thiết bị khác trên mạng nói. HTTP là cách cuộc trò chuyện đó diễn ra, và nó hoạt động theo cả hai chiều:

  • Là một server, cam trả lời các yêu cầu từ điện thoại, trình duyệt và các thiết bị khác trên mạng. Framework microdot là server của cam.

  • Là một client, cam gửi yêu cầu đến các dịch vụ đám mây để tải lên, tải xuống, hoặc phối hợp. Module requests là client của cam.

Trong 14 chương tiếp theo, chúng ta sẽ xây dựng một ứng dụng camera chạy thực sự, sử dụng cả hai khả năng trên.

Một camera theo dõi chuyển động sân sau được đặt trên cột trong sân, quan sát những gì đang diễn ra, và thông báo cho chủ nhà khi có điều gì thú vị. Chúng ta sẽ phát triển cam từ một server "Tôi đang hoạt động" một route thành một sản phẩm có thể xuất xưởng: xem trực tiếp trên điện thoại của chủ nhà, dashboard với thanh trượt ngưỡng và nhật ký sự kiện, thông báo đẩy khi phát hiện chuyển động, đăng nhập, HTTPS, và lưu trữ đám mây cho mọi khung hình kích hoạt.

Mỗi chương bổ sung một tính năng. Các ví dụ code giả định các chương trước đã được thực hiện -- chúng ta không dán lại toàn bộ tập lệnh mỗi lần.

The phone or laptop talks to the cam over HTTPS for the dashboard, SSE events, and WebSocket commands; the cam talks out to a cloud archive over HTTPS POST.