Express.js ile Dosya Yükleme İşlemi

Express.js ile Dosya Yükleme İşlemi


Express.js, Node.js üzerinde çalışan minimal ve esnek bir web uygulaması çatısıdır. Uygulama geliştiricilere sağladığı birçok özellik ile popülerliğini artırmıştır. Dosya yükleme işlemleri, web uygulamalarında sıkça ihtiyaç duyulan özellikler arasında yer alır. Bu yazıda, Express.js kullanarak dosya yükleme işlemlerinin nasıl yapılacağını öğreneceğiz. Bunun için Multer adındaki bir middleware kütüphanesini kullanacağız.

Multer Nedir?

Multer, Node.js üzerinde Express.js uygulamalarında dosya yüklemeyi kolaylaştıran bir middleware'dir. Form verilerini işleyebilir ve dosyaları belirli bir dizine kaydedebilir. Multer, dosyaların yüklenmesi sırasında çeşitli seçenekler sunar. Örneğin, dosya boyutu sınırlamaları, dosya türü kısıtlamaları gibi bazı ayarları yapmamıza olanak tanır.

Kurulum

Multer'ı projemizde kullanabilmek için öncelikle kurulum gerçekleştirmemiz gerekiyor. Aşağıdaki komut ile Multer'ı projemize dahil edebiliriz:

npm install multer

Basit Bir Örnek

Şimdi, Express.js ve Multer kullanarak basit bir dosya yükleme uygulaması oluşturalım. Aşağıdaki adımları takip ederek bir uygulama oluşturabiliriz:

Proje Ayarları

Öncelikle yeni bir Express.js projesi oluşturun:

npm init -y
npm install express multer

Uygulama Kodu

Ardından aşağıdaki kodu uygulama dosyanıza ekleyin:

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

const app = express();
const PORT = 3000;

// Dosya yükleme ayarları
const storage = multer.diskStorage({
    destination: (req, file, cb) => {
        cb(null, 'uploads/');
    },
    filename: (req, file, cb) => {
        cb(null, file.originalname);
    }
});

const upload = multer({ storage: storage });

app.post('/upload', upload.single('file'), (req, res) => {
    res.send('Dosya yüklendi!');
});

app.listen(PORT, () => {
    console.log(`Sunucu http://localhost:${PORT} adresinde başlatıldı.`);
});

Sonuç

Bu makalede Express.js ve Multer kullanarak dosya yükleme işlemlerinin nasıl yapılacağını öğrendik. Multer, uygulamalarımızda dosya yükleme sürecini büyük ölçüde kolaylaştırır. İnternetten veya yerel cihazlardan dosyaları yüklemek için kullanıcı dostu bir arayüz oluşturmak için bu kütüphaneden faydalanabilirsiniz. Unutmayın ki, uygulamanızda kullanıcıların yüklediği dosyaların güvenliğini sağlamak için ek önlemler almanız da önemlidir.