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:
{
"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.