دوره‌ها / Node.js / Request & Response (Req & Res)

Request & Response (Req & Res)

15 دقیقه Article

Request & Response: کار با req و res در Express.js 📨

Request و Response objects برای دسترسی به request data و ارسال response استفاده میشن!

Request Object (req):

const express = require('express');
const app = express();

app.use(express.json());

app.post('/api/users', (req, res) => {
    // Request properties
    console.log(req.method);    // POST
    console.log(req.url);       // /api/users
    console.log(req.path);      // /api/users
    console.log(req.query);     // Query parameters
    console.log(req.params);    // Route parameters
    console.log(req.body);      // Request body
    console.log(req.headers);   // Request headers
    console.log(req.ip);        // Client IP
    
    res.send('OK');
});

Response Object (res):

const express = require('express');
const app = express();

app.get('/', (req, res) => {
    // ارسال text
    res.send('Hello');
    
    // ارسال JSON
    res.json({ message: 'Hello' });
    
    // ارسال status code
    res.status(201).json({ message: 'Created' });
    
    // تنظیم header
    res.set('Content-Type', 'text/plain');
    
    // Redirect
    res.redirect('/about');
    
    // ارسال فایل
    res.sendFile('/path/to/file.html');
});

مثال عملی:

const express = require('express');
const app = express();

app.use(express.json());

// GET request
app.get('/users/:id', (req, res) => {
    const userId = req.params.id;
    const page = req.query.page || 1;
    
    res.json({
        userId: userId,
        page: page
    });
});

// POST request
app.post('/users', (req, res) => {
    const { name, email } = req.body;
    
    // Validation
    if (!name || !email) {
        return res.status(400).json({
            error: 'Name and email are required'
        });
    }
    
    res.status(201).json({
        message: 'User created',
        user: { name, email }
    });
});
✅ یاد گرفتید: Request و Response برای کار با HTTP requests ضروریه!

آماده رفتن به درس بعدی هستید؟

این درس را به پایان رساندید و می‌توانید به درس بعدی بروید.

برای ذخیره پیشرفت وارد شوید