ما هو Express.js؟
Express.js هو إطار عمل (Framework) سريع، مرن، وبسيط لبناء تطبيقات الويب والـ APIs باستخدام Node.js. يُعتبر Express.js الخيار الأول لمطوري Node.js بسبب سهولته وقوته.
لماذا Express.js؟
- سهل التعلم والاستخدام
- مرن ويسمح ببناء تطبيقات بأي حجم
- يحتوي على نظام Middleware قوي
- مجتمع ضخم ومكتبات كثيرة
- أداء عالي وسريع
تثبيت Express.js
لتثبيت Express.js في مشروعك، استخدم الأمر التالي:
هذا الأمر سيقوم بـ:
- إنشاء ملف
package.jsonللمشروع - تثبيت Express.js وإضافته للمشروع
أول تطبيق Express
لنقم بإنشاء أول تطبيق بسيط باستخدام Express. أنشئ ملف app.js:
لتشغيل التطبيق:
الآن افتح المتصفح وانتقل إلى http://localhost:3000 لترى رسالة الترحيب!
شرح الكود
require('express')
استيراد مكتبة Express لاستخدامها في التطبيق
express()
إنشاء تطبيق Express جديد وتخزينه في متغير app
app.get()
تعريف Route يستجيب لطلبات GET على المسار الرئيسي
app.listen()
بدء تشغيل السيرفر على المنفذ المحدد
كائنات Request و Response
في Express، كل Route يحصل على كائنين رئيسيين:
كائن Request (req)
يحتوي على معلومات الطلب الوارد من المتصفح:
req.params- معاملات URLreq.query- Query parametersreq.body- بيانات الجسم (Body)req.headers- رؤوس الطلب
كائن Response (res)
يستخدم لإرسال الاستجابة للمتصفح:
res.send()- إرسال نص أو HTMLres.json()- إرسال JSONres.status()- تعيين حالة HTTPres.render()- عرض قالب
Routes متعددة
يمكنك إنشاء عدة Routes لمسارات مختلفة:
Route Parameters
يمكنك إنشاء Routes ديناميكية تقبل معاملات:
HTTP Methods الأساسية
Express يدعم جميع HTTP Methods:
تقديم ملفات ثابتة (Static Files)
لتقديم ملفات CSS، JavaScript، وصور:
ملاحظة مهمة
تأكد من إنشاء مجلد public وضع فيه ملفاتك الثابتة قبل استخدام express.static()
مثال عملي: API بسيط
لنبني API بسيط لإدارة قائمة مهام:
يمكنك اختبار الـ API باستخدام أدوات مثل Postman أو Insomnia أو باستخدام curl:
الخطوات التالية
الآن وقد تعلمت أساسيات Express.js، إليك ما يجب أن تتعلمه بعد ذلك: