Node.js HTTP Server

Membuat HTTP Server dengan NodeJS tanpa framework (Vanilla)

Untuk membuat server sederhana dengan NodeJS, kita tidak membutuhkan framework apapun. Kita hanya membutuhkan NodeJS dan pemahaman sedikit mengenai package.json.

Membuat folder baru atau menggunakan folder yang sudah ada

mkdir server-vanilla
cd server-vanilla

Inisialisasi project

npm init --yes

lalu pasti akan muncul file package.json yang berisi informasi mengenai project kita.

    • package.json
  • dimana package.json berisi informasi mengenai project kita buat.

    package.json
    {
      "name": "server-vanilla",
      "version": "1.0.0",
      "description": "",
      "main": "index.js",
      "scripts": {
        "test": "echo \"Error: no test specified\" && exit 1",
      },
      "keywords": [],
      "author": "",
      "license": "ISC"
    }

    Membuat file index.js

    touch index.js

    bagi pengguna windows kalian bisa langsung saja membuat file baru pada visual studio code dengan nama file index.js.

    • package.json
    • index.js
  • Membuat server

    index.js
    const http = require('http');
    const PORT = 3000;
     
    const server = http.createServer((req, res) => {
      res.end('Hello World')
    });
     
    server.listen(PORT, () => {
      console.log(`Server is running on port ${PORT}`)
    })

    Menjalankan server

    node index.js

    Membuka browser

    Buka browser dan ketikkan localhost:3000 pada address bar, maka akan muncul tulisan Hello World pada terminal.

    Untuk kode lengkap dapat dilihat pada repository ini ↗ (opens in a new tab)

    ℹ️

    Kalian bisa menambahkan script start pada package.json untuk menjalankan server dengan perintah npm run start.

    package.json
    {
      "name": "server-vanilla",
      "version": "1.0.0",
      "description": "",
      "main": "index.js",
      "scripts": {
        "test": "echo \"Error: no test specified\" && exit 1",
        "start": "node index.js"
      },
      "keywords": [],
      "author": "",
      "license": "ISC"
    }

    atau kalian juga bisa menggunakan nodemon ↗ (opens in a new tab) node package untuk monitor perubahan kode, sehingga server akan restart secara otomatis ketika ada perubahan kode.

    dengan menginstall nodemon terlebih dahulu dengan perintah npm install nodemon --save-dev dan mengubah script start pada package.json menjadi seperti berikut.

    npm install nodemon --save-dev
    package.json
    {
      "name": "server-vanilla",
      "version": "1.0.0",
      "description": "",
      "main": "index.js",
      "scripts": {
        "test": "echo \"Error: no test specified\" && exit 1",
        "start": "nodemon index.js"
      },
      "keywords": [],
      "author": "",
      "license": "ISC",
      "devDependencies": {
        "nodemon": "^2.0.7"
      }
    }