التعامل مع الطلبات والاستجابات HTTP في Express.js

التعامل مع الطلبات والاستجابات HTTP في Express.js
التعامل مع الطلبات والاستجابات HTTP في Express.js

في تطوير تطبيقات الويب باستخدام Express.js، يُعد التعامل مع الطلبات والاستجابات HTTP جزءًا أساسيًا يحدد كيفية تفاعل التطبيق مع المستخدمين والأنظمة الأخرى. في هذا الموضوع، سنستعرض كيفية استقبال الطلبات وإرسال الاستجابات باستخدام Express.js، مع تقديم أمثلة توضح هذه العمليات.

استقبال الطلبات

في Express.js، يتم تحديد الطرق التي تستقبل الطلبات باستخدام أساليب مثل GET, POST, PUT, وDELETE. كل طريق يعالج نوعًا محددًا من الطلبات ويتعامل مع بيانات الطلب بطرق مختلفة.

مثال على طريق GET:

app.get('/api/users', (req, res) => {
    res.send('Fetching all users');
});

في هذا المثال، يتم استخدام طريق GET لاسترجاع معلومات المستخدمين. الدالة المستخدمة تتلقى طلبًا وتستجيب برسالة نصية.

مثال على طريق POST:

app.post('/api/users', (req, res) => {
    const newUser = req.body;
    console.log(newUser);  // يظهر بيانات المستخدم الجديد في الكونسول
    res.status(201).send('User created');
});

في هذا المثال، يتم استخدام طريق POST لإنشاء مستخدم جديد. req.body يحتوي على بيانات المستخدم المرسلة مع الطلب.

إرسال الاستجابات

Express.js يوفر عدة طرق لإرسال استجابات إلى العميل. يمكن إرسال نص، JSON، أو حتى ملفات.

إرسال JSON:

app.get('/api/user/:id', (req, res) => {
    const user = { id: req.params.id, name: "John Doe" };
    res.status(200).json(user);
});

في هذا المثال، يتم إرسال استجابة JSON تحتوي على بيانات المستخدم. استخدام res.json() يسهل إرسال بيانات JSON ويضمن تعيين Content-Type بشكل صحيح.

إرسال الملفات:

app.get('/download/report', (req, res) => {
    res.download('/path/to/report.pdf');
});

هذا المثال يظهر كيفية إرسال ملف للعميل. res.download() يطلب من المتصفح تحميل الملف كمرفق.

معالجة الأخطاء

معالجة الأخطاء في Express.js يمكن أن تتم بشكل أنيق باستخدام middleware خاص بالأخطاء.

مثال على middleware لمعالجة الأخطاء:

app.use((err, req, res, next) => {
    console.error(err.stack);
    res.status(500).send('Something broke!');
});

هذه الدالة تُستخدم لالتقاط أي أخطاء قد تحدث أثناء معالجة الطلبات، وترسل استجابة تحتوي على رمز حالة 500، مما يعني وجود خطأ داخلي في الخادم.

خلاصة

التعامل مع الطلبات والاستجابات في Express.js هو الأساس الذي يقوم عليه تطوير تطبيقات الويب. من خلال استخدام الطرق المحددة وmiddleware المناسب، يمكن للمطورين إنشاء تطبيقات ويب قوية ومرنة تستجيب بفعالية لطلبات المستخدمين وتحسن من تجربة المستخدم النهائية.

الكاتب

1 Trackback / Pingback

  1. دروس الدورة التعليمية لـ Express.js - Fawatech

قسم التعليقات مغلق.