۱۱

پروژه ۱: ساخت API وبلاگ

یک API کامل برای مدیریت پست‌های وبلاگ با Node.js می‌سازیم.

هدف پروژه

می‌خوایم یه API کامل (CRUD) برای پست‌های وبلاگ بسازیم. این API باید بتونه:

  • GET /posts: لیست همه پست‌ها رو بده.
  • GET /posts/:id: یه پست خاص رو با ID بده.
  • POST /posts: یه پست جدید بسازه.
  • PUT /posts/:id: یه پست رو آپدیت کنه.
  • DELETE /posts/:id: یه پست رو حذف کنه.

برای این پروژه از Node.js، Express و دیتابیس MySQL استفاده می‌کنیم.

نمونه کد: روت DELETE

این یه نمونه از کد مربوط به Endpoint حذف یه پسته. اول چک می‌کنیم پست وجود داره، بعد حذفش می‌کنیم.

server.js
// DELETE: حذف یک پست
app.delete('/api/posts/:id', async (req, res) => {
  try {
    const connection = await mysql.createConnection(dbConfig);
    const [result] = await connection.execute(
      'DELETE FROM posts WHERE id = ?',
      [req.params.id]
    );

    if (result.affectedRows === 0) {
      return res.status(404).json({ message: 'پست پیدا نشد.' });
    }

    res.status(200).json({ message: 'پست با موفقیت حذف شد.' });
  } catch (error) {
    res.status(500).json({ error: 'خطای سرور' });
  }
});