Upload Files dengan NodeJS

Upload Files dengan NodeJS


Node.js mendukung kemudahan untuk melakukan upload files. Agar Node.js dapat menajalankan fungsi untuk mengupload files kita harus memanfaatkan library bernama formidable. Modul formidable harus kita instal terlebih dahulu melalui NPM (node package manager). Untuk menginstal formidable dapat mengetikan perintah di bawah ini

npm install formidable

Setelah kita berhasil menginstal formidable kita akan membuat sebuah file Node.js baru dengan nama Upload.js dimana dalam file tersebut kita akan membuat sebuah form upload files.

const http = require('http');
var formidable = require('formidable');
var fs = require('fs');
const hostname = '127.0.0.1';
const port = 3000;
const server = http.createServer((req,res) => {
if(req.url == '/fileupload'){
   var form = new formidable.IncomingForm();
   form.parse(req, function(err, fields, files) {
   var oldpath = files.filetoupload.path;
   var newpath = './files/' + files.filetoupload.name;
   fs.rename(oldpath, newpath, function(err){
   if(err) throw err;
       res.write('file uploaded and moved');
       res.end();
    });
    });
}else{
res.writeHead(200, {'Content-Type':'text/html'});
res.write('<form action="fileupload" method="post" enctype="multipart/form-data">');
res.write('<input type="file" name="filetoupload"><br>');
res.write('<input type="submit">');
res.write('</form>');
return res.end();
}
});                                                                                                                                                           
server.listen(port, hostname, () = {
console.log('server run');
});

Sekarang kita jalankan perintah “node Upload” pada terminal, kemudian server Node.js akan berjalan. Jika kita buka browser lalu ketikan url http://127.0.0.1:3000 maka akan menemukan sebuah form upload pada browser. Pilihlan sebuah file dan tekan tombol submit, maka kita berhasil mengupload sebuah file.
LihatTutupKomentar