Latihan buat 20 Node.js. Dijalankan dengan Node (
node file.js), bukan di browser/playground. Konsep:process.argv, modulfsdanhttp. Jawaban di 20 Kunci Jawaban Node.
20.1 Tool Pencari
Tulis tool command line yang mencari kata di beberapa file: node cari.js kata file1.txt file2.txt, mencetak nama file yang isinya mengandung kata itu.
Petunjuk: ambil argumen dari process.argv.slice(2) (indeks 0 = kata, sisanya nama file). Loop file, readFile(nama, "utf8"), dan kalau isinya mengandung kata itu (includes), cetak namanya. Konsep di 20 Node.js > Modul Inti dan 20 Node.js > Modul fs (File System).
→ Jawaban: 20 Kunci Jawaban Node > 20.1 Tool Pencari
20.2 Pembuatan Direktori
Tambahkan penanganan method MKCOL (buat direktori) ke file server dari babnya.
Petunjuk: cek request.method == "MKCOL", panggil fs.mkdir pada path yang di-resolve, dan balas status sukses atau error yang sesuai (tangani kasus direktori sudah ada). Konsep di 20 Node.js > Server HTTP.
→ Jawaban: 20 Kunci Jawaban Node > 20.2 Pembuatan Direktori
20.3 Ruang Web Publik
Buat file server yang juga melayani halaman HTML berisi form/JavaScript yang bisa mengedit file di server (lewat PUT), jadi ruang publik yang bisa diubah pengunjung.
Petunjuk: server melayani file statis (GET) + menerima PUT untuk menyimpan. Halaman HTML-nya pakai fetch dengan method: "PUT" untuk mengirim perubahan. Ini menggabungkan seluruh bab: fetch (18 HTTP dan Form), form, dan server Node. Konsep di 20 Node.js > File Server Sederhana.