Menggunakan Express

Membuat API menggunakan framework Express

Membuat folder project

mkdir server-express
cd server-express

Menginisiasi project Node.js

npm init -y
    • package.json
  • Menginstall Express

    npm install express
    • package.json
    • package-lock.json
  • 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
    • package-lock.json
    • index.js
  • const express = require('express')
    const app = express()
    const port = 3000
     
    app.get('/', (req, res) => {
      res.send('Hello World!')
    })
     
    app.listen(port, () => {
      console.log(`Example app listening at http://localhost:${port}`)
    })

    Menjalankan server

    node index.js

    atau kalian bisa menggunakan nodemon

    npm install nodemon -D

    lalu

    nodemon index.js

    Membuat file .gitignore

    touch .gitignore

    lalu tambahkan

    node_modules

    atau

    echo "node_modules" >> .gitignore
    🧠

    Seperti biasa, kalian bisa saja mengubah isi file package.json untuk menambahkan script start atau dev seperti contoh:

    package.json
    {
      "name": "server-express",
      "version": "0.0.7",
      "description": "server using express.js",
      "main": "index.js",
      "scripts": {
        "test": "echo \"Error: no test specified\" && exit 1",
        "start": "node index.js",
        "dev": "nodemon index.js"
      },
      "keywords": [
        "nodejs",
        "express"
      ],
      "dependencies": {
        "express": "^4.17.1"
      },
      "author": "icanq",
      "license": "ISC"
    }

    dimana untuk menjalankan server kalian bisa menggunakan npm start atau npm run dev

    Penjelasan

    Apabila kalian melihat pembuatan server dengan menggunakan Express dan membandingkannya. Perbandingan utama dengan menggunakan Express, kalian tidak perlu membuat server dengan menggunakan http.createServer dan server.listen. Karena Express sudah menyediakan fitur tersebut. Dan juga setiap kali kalian ingin menangani request, kalian tidak perlu menggunakan if (req.url === "/namaRutenya") dan req.methods === "HttpMethodsnya" seperti pada pembuatan server dengan menggunakan http.createServer. Karena Express sudah menyediakan fitur tersebut. Kalian hanya perlu menuliskan app.get atau app.post atau app.put atau app.delete dan lain-lain. Dan juga kalian tidak perlu menuliskan res.writeHead dan res.end seperti pada pembuatan server dengan menggunakan http.createServer. Karena Express sudah menyediakan fitur tersebut. Kalian hanya perlu menuliskan res.send atau res.json atau res.sendFile dan lain-lain.

    Sumber Bacaan dan Referensi