iT邦幫忙

2023 iThome 鐵人賽

DAY 3
0
自我挑戰組

30 天架設 Node.js - Express 框架:快速學習之路系列 第 3

Day 3 - 路由和控制器:處理 URL 和路由(上)

  • 分享至 

  • xImage
  •  

昨天已可以順利地讓伺服器動起來,但是不是程式碼有看沒有懂呢?

今明兩天會來與大家聊聊 express 的核心技術之一 → Routing (路由)

什麼是 Routing (路由)

官網對於路由的描述:

Routing refers to how an application’s endpoints (URIs) respond to client requests.

簡單來說,路由就像地圖上的路標,告訴你的應用程式如何處理不同的請求,
以便將用戶引導到正確的目的地(頁面或功能)。
所以就像你需要地圖來找到特定景點一樣,應用程式需要路由來處理不同的請求,
並提供正確的內容。


如何使用 Routing

  1. 一開始先使用 node.js 的 require 函數來引入 express 模塊。
  2. 調用 express 函數的 express() 並放入 app 變數中。
    const express = require('express') // 先引用 express
    const app = express() // 調用 express()
  1. 接下來,我們可以定義路由,告訴應用程式如何處理不同的請求。
    比如,如果有人訪問首頁,我們可以這樣做:
    // app.js

    app.get('/', (req, res) => {
      res.send('Hello World!')
    }) 
  • app.METHOD(PATH, HANDLER)的意思
    • METHOD 為 HTTP 要求方法。
    • PATH 為設定的路徑 (預設是首頁 /)。
    • HANDLER 是執行這個路由要做的事。

以上一步步的拆解後,就可以知道我們昨天寫的程式,
意思是將這段程式碼告訴 Express,當有人發送 GET 請求到首頁(/)時,
應該回傳 Hello World!

另外,我們也可以使用不同的 METHODPATH 來試試:

  • 使用 POST 方法(METHOD)到名為 book 的路徑(PATH)時,
    需要回應 This is Book page!,就可以使用
    // app.js

    app.post('/book', (req, res) => {
      res.send('This is Book page!')
    }) 

是不是很簡單呢~
以上路由讓你能夠輕鬆地控制不同請求的處理邏輯,就像在地圖上選擇不同的路線一樣。/images/emoticon/emoticon07.gif

但如果我們有好幾個路由,且每個路由都個想要做到 GET、POST、DELETE 等請求方法的話。
就需要將路由模組化來進行管理。

這部分就留到明天來繼續了解啦~!


上一篇
Day 2 - 安裝 Express 開發環境及 建立第一個 Express 伺服器
下一篇
Day 4 - 路由和控制器:處理 URL 和路由(下)
系列文
30 天架設 Node.js - Express 框架:快速學習之路30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言