یک سرور ساده با Node.js و Express بنویسید که یک فایل متنی محلی را نگهداری کند و سه آدرس HTTP فراهم کند: GET برای خواندن محتوای فایل، POST برای اضافه کردن متن جدید به فایل، و DELETE برای خالی کردن یا حذف محتوای فایل.

24.0 بازدید آخرین ویرایش در 198 روز قبل ساعت 05:25

0.0

از Express برای ساختن مسیرها و از ماژول fs (ترجیحاً fs.promises) برای خواندن، نوشتن یا اضافه‌کردن به فایل استفاده کنید؛ مسیرهای پیشنهادی: GET /notes (برگرداندن محتوا)، POST /notes (دریافت body با JSON مثل { "text": "..." } و append به فایل)، DELETE /notes (پاک کردن یا بازنویسی فایل با رشته خالی). از async/await برای فراخوانی‌های I/O غیرمسدودکننده استفاده کنید، با path.join فایل را نسبت به پروژه تعیین کنید، خطاها را با کدهای وضعیت مناسب مدیریت کنید و در صورت نبودن فایل، آن را ایجاد نمایید.

توسط پژوهشگر در 198 روز قبل ساعت 05:25
دسته بندی ها: JavaScript JavaScript for beginner
nima در 198 روز قبل ساعت 05:26

در پیاده‌سازی چنین سرویسی مراقب همزمان‌نویسی و اندازه بدنه باشید چون چند درخواست هم‌زمان می‌تواند منجر به تداخل یا افزایش حجم غیرقابل‌پیش‌بینی فایل شود؛ برای ترافیک بالا از صف/قفل (mutex) یا پایگاه‌داده استفاده کنید و در خواندن/نوشتن از fs.promises.appendFile/open با flag مناسب و encoding='utf8' بهره ببرید. همیشه از express.json({limit: '1kb' /*یا مقدار مناسب*/}) برای محدود کردن سایز ورودی و از validation برای فیلتر کردن محتوای ورودی استفاده کنید تا حملات DoS یا ذخیره‌سازی محتوای مخرب محدود شود. مسیر فایل را با path.join(__dirname, 'notes.txt') تعیین کنید تا از path traversal جلوگیری شود و اگر فایل وجود نداشت آن را با fs.writeFile('', {flag:'a'}) ایجاد کنید. خطاها را با کدهای وضعیت مناسب برگردانید و لاگ‌گیری کافی داشته باشید تا اشکال‌زدایی و مانیتورینگ ساده‌تر شود.

گزارش

1 پاسخ

جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من

در حال بارگیری...
ورود به حساب کاربری