10.14. الخلاصة¶
الكاميرا في الفناء الآن تراقب ما أمامها، وتبث العرض إلى أي هاتف مسجّل الدخول، وتطلق أحداثًا مرسلة من الخادم (Server-Sent Events) لحظة تحرك شيء ما، وتقبل أوامر لوحة المعلومات عبر WebSocket، وترفع صورة JPEG لكل إطار محفّز إلى أرشيف سحابي -- كل ذلك عبر HTTPS، خلف تسجيل دخول، مع إغلاق CORS وCSRF الباب أمام العبث عبر المواقع. برنامج نصي واحد، وأربعة كوروتينات في الخلفية تتشارك حلقة asyncio مع خادم HTTP واحد، وثلاثة ملفات صغيرة في /sdcard/static/ للوحة المعلومات، ومفتاح توقيع واحد على نظام الملفات.
10.14.1. خارطة طريق المراجع¶
عندما تلجأ إلى إحدى هذه الميزات في تطبيقك الخاص، فإن صفحات المراجع هي وجهات البحث:
microdot --- إطار عمل HTTP بسيط --
microdot.Microdot، وRequest، وResponse، ومُزخرِفات المسارات، وmount()، وmicrodot.abort()، وmicrodot.redirect()، وstart_server()، وrun().microdot.auth --- مصادقة HTTP --
BasicAuthوTokenAuthللمصادقة المعتمدة على الترويسة.microdot.session --- جلسات ملفات تعريف الارتباط الموقَّعة -- مخزن الجلسات بملفات تعريف الارتباط المُوقَّعة.
microdot.login --- تدفق تسجيل دخول المستخدم -- تدفق تسجيل الدخول المبني فوق الجلسة.
microdot.sse --- أحداث مُرسَلة من الخادم (Server-Sent Events) -- الأحداث المرسلة من الخادم (Server-Sent Events) للدفع باتجاه واحد.
microdot.websocket --- دعم WebSocket -- WebSockets للمراسلة المؤطرة باتجاهين.
microdot.cors --- مشاركة الموارد عبر المصادر (CORS) -- وسيط CORS.
microdot.csrf --- حماية CSRF -- وسيط CSRF.
microdot.multipart --- تحليل multipart/form-data -- تحليل النماذج ورفع الملفات (لا تقبل كاميرا الفناء الخلفي عمليات الرفع، لكن معظم لوحات المعلومات تقبلها في نهاية المطاف).
jwt --- رموز JSON المميزة على الويب (JSON Web Tokens) -- بنية JWT الأساسية التي تدعم كلًّا من
TokenAuthومخزن الجلسات.requests --- عميل HTTP -- عميل HTTP الصادر.
كل واحدة منها عبارة عن صفحة بحث واحدة. استخدمها الآن بعد أن رأيت كل جزء في سياقه.