در Node.js با استفاده از Express یک endpoint بسازید که فایل متنی آپلود‌شده را دریافت کند، محتوای آن را به حروف بزرگ تبدیل کند و در پوشه uploads با نام جدید ذخیره نماید.

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

0.0

برای حل این مسئله از Node.js و فریم‌ورک Express استفاده کنید و برای دریافت فایل multipart از بسته‌ای مثل multer بهره ببرید؛ پس از ذخیره موقت فایل، با fs.readFile محتوای فایل را بخوانید، با روش toUpperCase() به حروف بزرگ تبدیل کنید و با fs.writeFile آن را در پوشه uploads با نام جدید ذخیره نمایید. در کنار این‌ها نوع فایل را بررسی کنید (text/plain)، پوشه uploads را پیش از ذخیره‌سازی ایجاد کنید و خطاها را به‌صورت مناسب هندل کرده و پاسخ مناسب JSON به کلاینت بازگردانید.

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

مطمئن شوید که در multer محدودیت‌هایی برای اندازه فایل و نوع MIME (text/plain) تعیین کرده‌اید و ورودی‌های کاربر را برای جلوگیری از path traversal و نام‌گذاری مخرب معتبرسازی و sanitize کنید. قبل از ذخیره‌سازی پوشه uploads را با fs.mkdir({ recursive: true }) بسازید و برای جلوگیری از هم‌پوشانی نام‌ها یک شناسه یکتا یا timestamp به نام فایل اضافه کنید. برای خواندن و نوشتن از fs.promises با encoding: 'utf8' استفاده کنید و اگر احتمال فایل‌های بزرگ هست از پردازش استریم‌محور به جای بارگذاری کامل در حافظه بهره ببرید. در نهایت فایل موقت را پاک کنید و در تمامی مسیرها خطاها را هندل کرده و پاسخ JSON معنادار به کلاینت بازگردانید.

گزارش

1 پاسخ

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

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