Skip to main content

Belajar Node.js Part 9 - Cara Upload File




Sekarang, kita akan belajar cara meng-upload file dengan Node.js

Mengenal Modul Formidable

Ada sebuah modul yang sangat bagus untuk meng-upload file, namanya "Formidable".

Modul tersebut dapat di-download dan di-install dengan NPM.

Caranya:
npm install formidable

Setelah kita men-download modul Formidable, kita dapat meng-include modul tersebut:

var fmd = require('formidable');

Meng-Upload File

Sekarang, kita siap untuk membuat halaman web dalam Node.js yang membuat user dapat meng-upload file ke komputer kita:

[MY_ADS/]

Langkah 1: Buat Sebuah Form Upload

Buat sebuah file Node.js yang menulis form HTML berisi field untuk upload:

var objek_http = require('http');

objek_http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/html'});
  res.write('<form action="fileupload" enctype="multipart/form-data" method="post">');
  res.write('<input name="filetoupload" type="file" />');
  res.write('<input type="submit" />');
  res.write('</form>');
  return res.end();
}).listen(8080);

Langkah 2: Urai File yang Akan Di-Upload

Include modul Formidable agar kita bisa mengurai file terupload setelah ia mencapai server.

Ketika file telah terupload dan terurai, file tersebut akan diletakkan pada folder sementara di komputer kita.

var objek_http = require('http');
var fmd = require('formidable');

objek_http.createServer(function (req, res) {
  if (req.url == '/fileupload') {
    var frm = new fmd.IncomingForm();
    frm.parse(req, function (err, fields, files) {
      res.write('File terupload!');
      res.end();
    });
  } else {
    res.writeHead(200, {'Content-Type': 'text/html'});
    res.write('<form action="fileupload" enctype="multipart/form-data" method="post">');
    res.write('<input name="filetoupload" type="file" />');
    res.write('<input type="submit" />');
    res.write('</form>');
    return res.end();
  }
}).listen(8080);

Langkah 3: Simpan File Tersebut

Kita telah tahu bahwa ketika sebuah file telah sukses diupload ke server, file tersebut akan diletakkan pada folder sementara.

Nilai path (misal "c:\uploads\<nama_file>") untuk folder sementara dapat kita temukan dalam objek "files".

Nilai tersebut dilewatkan sebagai argument ke-3 dalam callback-nya fungsi parse().

Untuk memindahkan file ke folder yang kita inginkan, gunakan modul file system, kemudian rename file tersebut:

var objek_http = require('http');
var fmd = require('formidable');
var fs = require('fs');

objek_http.createServer(function (req, res) {
  if (req.url == '/fileupload') {
    var frm = new fmd.IncomingForm();
    frm.parse(req, function (err, fields, files) {
      var oldpath = files.filetoupload.path;
      var newpath = 'c:/uploads/' + files.filetoupload.name;
      fs.rename(oldpath, newpath, function (err) {
        if (err) throw err;
        res.write('File terupload dan dipindahkan!');
        res.end();
      });
 });
  } else {
    res.writeHead(200, {'Content-Type': 'text/html'});
    res.write('<form action="fileupload" enctype="multipart/form-data" method="post">');
    res.write('<input name="filetoupload" type="file" />');
    res.write('<input type="submit" />');
    res.write('</form>');
    return res.end();
  }
}).listen(8080);

Sumber:
https://www.w3schoools.com

Popular posts from this blog

Belajar Node.js - Tutorial Dasar Node.js

Pemrograman web adalah salah satu pemrograman yang membutuhkan banyak skill.

Untuk menghasilkan satu aplikasi web saja, setidaknya diperlukan minimal 4 skill, misalnya PHP, HTML, Javascript, dan CSS.

Untungnya, saat ini Node.js telah lahir untuk mengurangi skill yang dibutuhkan dalam pemrograman web. Tapi hanya satu saja lho...

Apa itu?

Jawabannya adalah Javascript.

Selama ini kita belajar Javascript untuk melakukan pemrograman di sisi client.

Seperti halnya membuat animasi, dan mengatur layout agar rapi, atau mungkin melakukan request dengan AJAX.

Tapi itu semua di sisi client.

Nah, sekarang sudah ada Node.js. Dengan software ini, kita bisa melakukan pemrograman di sisi server dengan Javascript.

Dengan adanya Node.js, setidaknya satu skill tambahan, misalnya PHP, sudah tidak diperlukan, kecuali kalau Anda ngotot ingin mempelajarinya.

Oleh karena itu, mari kita mulai petualangan ini.

Mengapa Kita Perlu Belajar Node.js? Bukan hanya Sekadar Bahasa Baru dalam Server Side Scripting

Node.…

3 Cara Meng-Include Javascript pada Javascript yang Lain

Ada kalanya, kita perlu meng-include file Javascript lain ke dalam Javascript kita tanpa tag "<script>" yang statis.

Untuk CSS, hal yang serupa bisa juga terjadi, hanya saja sudah ada solusinya, yakni @import.

Lalu bagaimana dengan Javascript?

Perlu diketahui bahwa versi lama dari Javascript tidak memiliki import, include, maupun require.

Akan tetapi, versi Javascript terkini memiliki standard seperti modul ES6 untuk mengimport modul.

Sayangnya, itu tidak disupport oleh kebanyakan browser.


Oleh karena itu, di sini kita akan mempelajari cara meng-include Javascript dari file Javascript lain, termasuk dengan metode yang disediakan modul ES6.

Modul ES6 Ketika modul ini sudah disupport oleh kebanyakan browser, kita tinggal melakukan ini:
//yang_akan_diimport.js export function ngudud() { return "Ngudud"; } //yang_mengimport.js import {ngudud} from 'yang_akan_diimport'; // atau './yang_akan_diimport' let val = ngudud(); // val berisi "Ngud…

34+ Website untuk Menjual Kode dan Aplikasi Anda

Programmer juga manusia.

Jadi butuh penghasilan juga.

Beberapa cara programmer untuk menghasilkan uang adalah:
Menjual Aplikasi.Menjual Source Code/Script.Menjual Buku.Menjual File Pendukung Aplikasi. Cara-cara tersebut didukung oleh adanya marketplace untuk menjual produk digital seperti source code, script, aplikasi, ebook, dan file-file yang mendukung pembuatan aplikasi.

Marketplace-marketplace tersebut saya bagi dua:
Yang lokal (dalam negeri).Yang internasional. Cara pembayaran produk dari customer ke marketplace tersebut beragam.

Mulai dari credit card, paypal, bitcoin, dan sebagainya. Akan saya paparkan sebisa saya.

Fitur-fitur dari setiap marketplace tersebut juga berbeda-beda. Akan saya sebutkan jika ada yang menarik.

Berikut ini adalah daftar marketplace tersebut.
Marketplace Lokal (Dalam Negeri) 1. Ratakan URL: https://www.ratakan.com/

Yang bisa dijual:
Semua jenis produk digital. Pembayaran produk:
Transfer Bank (BCA, BNI, BRI, Mandiri).Bitcoin (melalui BitBayar).BCA Klikpay.A…