نصائح

ما هو الرف؟

ما هو الرف؟

هناك الكثير من الحديث حول Rack ، ولكن ما لم تكن مؤلفًا إطاريًا بنفسك ، فنادراً ما تشاهده. إذن ما هو الرف؟ ولماذا ، كمطور تطبيق ، يجب أن تهتم به؟

أساسيات الرف

الرف هو نوع من الوسيطة. يجلس بين تطبيق الويب الخاص بك وخادم الويب. يقوم بمعالجة جميع مكالمات API الخاصة بالخادم ، ويقوم بتمرير طلب HTTP وجميع معلمات البيئة في علامة التجزئة ، ويعيد استجابة التطبيق الخاص بك إلى الخادم. بمعنى آخر ، لا يحتاج تطبيقك إلى معرفة كيفية التحدث إلى خادم HTTP ، بل يحتاج إلى معرفة كيفية التحدث إلى Rack.

مزايا الرف

هذه لديها عدد من المزايا. أولاً ، التحدث إلى Rack أمر سهل (كما سترى أدناه). ثانيًا ، نظرًا لأنك تحتاج فقط إلى معرفة كيفية التحدث إلى Rack ، ويعرف Rack كيفية التحدث إلى العديد من خوادم HTTP المختلفة ، سيتم تشغيل التطبيق الخاص بك على أي من خوادم HTTP هذه. يشبه الرف محول عالمي لتطبيقات الويب.

تطبيقات الرف أنفسهم ليست خاصة. في الواقع ، فإن واجهة برمجة تطبيقات Rack API بسيطة للغاية ، ويمكن وصفها في جملة واحدة:

تطبيق الرف هو أي كائن روبي يستجيب ل مكالمة الأسلوب ، يأخذ معلمة تجزئة واحدة وإرجاع صفيف يحتوي على رمز حالة الاستجابة ، ورؤوس استجابة HTTP ونص الاستجابة كصفيف من السلاسل.

هذا الى حد كبير ذلك. يبدو الأمر بسيطًا جدًا بحيث لا يكون صحيحًا ، أو على الأقل من السهل أن يكون مفيدًا ، ولكن عندما يتعلق الأمر به حقًا ، فهذا كل ما تفعله حقًا عندما تتحدث إلى خوادم HTTP.

لماذا الرف مهم؟

لكن على السؤال الحقيقي: لماذا ، كمبرمج تطبيق ، يجب أن تهتم بـ Rack؟ حسنًا أولاً ، هناك دائمًا التنوير في فهم كيفية عمل إطارك. ولكن الأهم من ذلك ، هناك أشياء مفيدة يمكنك القيام بها مع Rack. الأهم من ذلك: الوسيطة.

الآن ، هذا يبدو غريبا بعض الشيء. ولكن يمكن أن يكون وجود طبقة إضافية بين التطبيق ورف أمرًا جيدًا ، وتطبيق ميزات من شأنها أن تفسد تطبيقك فقط. ما تفعله هذه الوسيطة هو ببساطة أخذ الطلب من Rack ، ونقله إلى التطبيق الخاص بك ، والحصول على رده ، وإضافة شيء إليه أو تصفيته أو شيء ما على طول هذه الخطوط ، ثم تمرير الاستجابة مرة أخرى إلى Rack. يمكن استخدام هذا لتنفيذ ميزات صغيرة مثيرة جدًا للاهتمام مثل مسجل بيانات الخادم أو مدقق عقل طلب أو برنامج وسيط صغير يرسل بريدًا إلكترونيًا إلى المسؤول في كل مرة يعود فيها التطبيق الخاص بك إلى 404. ولا تحتاج أي من هذه الميزات إلى الفوضى التطبيق ، يمكن تنفيذها كما الوسيطة مع الرف.


شاهد الفيديو: محمود العسيلى - مش زي الأفلام. Mahmoud El Esseily - Mosh Zay El Aflam (أغسطس 2021).