Daraja هو إطار خادم HTTP مرن لـ Object Pascal ، استنادًا إلى مكون خادم HTTP غير المرئي في مكتبة Open Open Library Direct (Indy) المجانية.
يوفر Daraja الأساس الأساسي لخدمة موارد HTTP لجميع أنواع المحتوى مثل صفحات HTML والصور والبرامج النصية واستجابات خدمة الويب وما إلى ذلك عن طريق تعيين مسارات الموارد إلى الكود الخاص بك. يمكن بعد ذلك إنشاء كودك على إنشاء محتوى الاستجابة ، أو السماح للإطار بخدمة ملف ثابت.
تُظهر مشاريع مثال على سبيل المثال فائدتها لحالة الاستخدامات المتقدمة ، مثل OAUTH 2.0 و OpenID Connect لـ Microsoft Entra Id و Google Identity Platform.
http://michaeljustin.github.io/daraja-framework/
يتوفر مستند بدء تشغيل (PDF) على https://www.habarisoft.com/daraja_framework/3.0-ms1/docs
تفضل بزيارة https://www.habarisoft.com/daraja_framework.html لمزيد من المعلومات.
مثال:
<daraja-home>source;<indy-home>LibCore;<indy-home>LibProtocols;<indy-home>LibSystem
يعد معالج الموارد مسؤولاً عن توليد استجابة HTTP التي تتطابق مع طلب عميل معين. يتم تعريف التوجيه بين طلب HTTP الفعلي ومعالج الموارد من خلال قواعد "تعيين". على سبيل المثال ، يمكن تعيين معالج الموارد على /context1/index.html مع تعيين مسار مطلق :
Context1.Add(TIndexPageResource, ' /index.html ' );هناك نوعان آخران من الخرائط المدعومة: تعيين البادئة ('/ sub1/ ' ، '/ sub2/ ' ...) ورسم خرائط لاحقة (' .html' ، ' .pdf' ...). يتم فحص جميع التعيينات في أمر محدد للعثور على معالج الموارد المسؤول.
بالإضافة إلى معالجات الموارد ، قد يتضمن التطبيق أيضًا مرشحات الموارد. مع المرشحات ، يمكن تعديل حركة مرور HTTP بعدة طرق ، مثل:
يمكن أيضًا استخدام جميع أنواع التعيين في مرشحات الموارد.