Node.js • المستوى الثاني • الدرس 4
العودة لفهرس المستوىاستقبال مدخلات المستخدم ونصوص JSON (Req Params & Body)
أهداف الدرس العلمية
- قراءة المتغيرات الممررة عبر الرابط باستخدام
req.params. - تجهيز معالج
express.json()لقراءة بيانات JSON من جسم الطلبreq.body. - الفرق بين
req.params(من URL) وreq.body(من النموذج). - بناء استجابات JSON منظمة تحتوي على معلومات المنتج والمستخدم.
1. استخراج المدخلات في Express
للوصول للقيم الممررة داخل الرابط مثل /users/:id نعتمد على req.params.id، بينما نقرأ البيانات المعقدة والمرسلة من النماذج بـ req.body.
javascript
// route: POST /api/products/:id
app.post('/api/products/:id', (req, res) => {
// من الرابط
const productId = req.params.id;
// من جسم الطلب (JSON)
const { name, price } = req.body;
res.json({
productId,
name,
price
});
});
// ⚠️ لا تنسَ تفعيل express.json()
app.use(express.json());2. مقارنة: params vs body vs query
📎 req.params
من مسار URL
/users/:idreq.params.id📦 req.body
من جسم الطلب (JSON/Form)
POST /usersreq.body.name🔍 req.query
من سلسلة الاستعلام
/search?q=testreq.query.q التطبيق العملي المباشر
تحدي الدرس الرابع: بناء استجابة شاملة
قم بالتعديل على الكود في المحرر أدناه:
- أضف خاصية
emailإلى كائنmockReq.body. - اطبع البريد الإلكتروني بـ
console.logداخلgetProductDetails. - أضف
productIdوcategoryإلى كائن الاستجابة المُعاد. - أضف كائناً فرعياً باسم
userيحتوي علىnameوemailوage.
⏳ جارٍ تحميل المحرر التفاعلي...