Express.js لجافا سكريبت (Node.js): دليل شامل مع أمثلة

مدرب بايثون أونلاين للمبتدئين

تعلم Python بسهولة دون إرهاق نظري. حل مهام عملية مع التحقق التلقائي واكتب الكود مباشرة في المتصفح.

ابدأ الدورة

ما هو Express.js ولماذا هو مطلوب؟

\n\n

Express.js هو إطار عمل ويب بسيط ومرن لـ Node.js، مكتوب بلغة جافا سكريبت. يوفر للمطورين مجموعة أدوات قوية لإنشاء تطبيقات الويب وواجهات برمجة التطبيقات (API) (REST، GraphQL). يعتبر Express.js المعيار الفعلي لتطوير الخادم على Node.js بفضل بساطته وسرعته ومجتمعه الضخم.

\n\n

لماذا نحتاج Express.js؟ يوفر Node.js نفسه وحدة HTTP منخفضة المستوى تسمح بإنشاء الخوادم. ومع ذلك، فإن العمل المباشر معها يتطلب كتابة الكثير من الكود النمطي لمعالجة المسارات، وتحليل الطلبات، وإدارة الجلسات، إلخ. يحل Express.js هذه المشاكل من خلال توفير:

\n
    \n
  • التوجيه (Routing): تعريف بسيط لمعالجات لعناوين URL وطرق HTTP مختلفة (GET، POST، PUT، DELETE).
  • \n
  • الوسائط الوسيطة (Middleware): نظام قوي يسمح بتنفيذ الكود قبل أو بعد معالجة الطلب (مثل التسجيل، المصادقة، الضغط).
  • \n
  • إدارة الطلبات والاستجابات: طرق ملائمة للعمل مع معاملات URL، ونص الطلب (body)، وملفات تعريف الارتباط، والرؤوس، وإرسال الاستجابات (JSON، HTML، ملفات).
  • \n
  • معالجة القوالب: التكامل مع محركات القوالب الشائعة مثل Pug و EJS و Handlebars.
  • \n
  • الملفات الثابتة: توزيع بسيط للموارد الثابتة (CSS، JS، صور).
  • \n
\n

يُستخدم Express.js لإنشاء كل شيء: من التطبيقات البسيطة ذات الصفحة الواحدة إلى الأنظمة المؤسسية المعقدة وواجهات برمجة التطبيقات عالية التحميل.

\n\n

تثبيت Express.js

\n

يتم تثبيت Express.js من خلال مدير الحزم npm (Node Package Manager). يُفترض أن لديك بالفعل Node.js و npm مثبتين.

\n\n

الخطوة 1: تهيئة المشروع

\n

أنشئ دليلاً جديداً لمشروعك وانتقل إليه في الطرفية. ثم قم بتهيئة مشروع Node.js جديد:

\n
mkdir my-express-app\ncd my-express-app\nnpm init -y
\n

العلامة -y تقبل تلقائياً جميع القيم الافتراضية. يمكنك أيضاً حذفها لملء بيانات المشروع الوصفية يدوياً.

\n\n

الخطوة 2: تثبيت Express

\n

قم بتثبيت Express.js كاعتماد للمشروع:

\n
npm install express
\n

سيضيف هذا الأمر Express إلى ملف package.json في قسم dependencies وسينشئ مجلد node_modules الذي يحتوي على المكتبة نفسها واعتماداتها.

\n\n

الخطوة 3: التحقق من التثبيت

\n

بعد التثبيت، يمكنك التحقق من إصدار Express في مشروعك:

\n
npx express --version
\n

أو ببساطة انظر إلى ملف package.json.

\n\n

بداية سريعة: "Hello World" على Express.js

\n

أنشئ ملفاً باسم app.js (أو index.js) في جذر مشروعك وأضف الكود التالي:

\n\n
// app.js\nconst express = require('express');\nconst app = express();\nconst port = 3000;\n\n// تعريف مسار لعنوان URL الجذر\napp.get('/', (req, res) => {\n  res.send('Hello World! Express.js يعمل!');\n});\n\n// تشغيل الخادم\napp.listen(port, () => {\n  console.log(`الخادم يعمل على http://localhost:${port}`);\n});
\n\n

تشغيل التطبيق:

\n

في الطرفية، نفذ الأمر:

\n
node app.js
\n

افتح المتصفح وانتقل إلى العنوان http://localhost:3000. يجب أن ترى الرسالة "Hello World! Express.js يعمل!".

\n\n

ماذا يحدث هنا؟

\n
    \n
  1. require('express') — نقوم باستيراد مكتبة Express.
  2. \n
  3. express() — نقوم بإنشاء نسخة من تطبيق Express.
  4. \n
  5. app.get('/', callback)

توصيات