في تطوير تطبيقات الويب باستخدام 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
قسم التعليقات مغلق.