# Day 12 &13 & 14 - 設計基本路由 - `app` 是 `express` 的實例。 - `METHOD` 是 [HTTP 要求方法](http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol)(GET、POST ...)。 - `PATH` 是伺服器上的路徑。 - `HANDLER` 是當路由相符時要執行的函數。 ### 路由進階管理 可以將有相關的路由拆分至另一個檔案管理,以上方 `user/*` 為例,將檔案結構變為如下: ``` - app.js - routes/ // 存放關於路徑的檔案 |- user.js // 和使用者相關的路徑 ``` ![螢幕擷取畫面 2024-04-29 180934](https://hackmd.io/_uploads/H1oLMep-R.png) ![螢幕擷取畫面 2024-04-29 180948](https://hackmd.io/_uploads/SyLDGxaWR.png) 延續前一天,當我們要取得特定貼文的資料的時候就會需要使用到該貼文的 id,而每個貼文都有自己的 id,此時就可以設計成動態路由: ![螢幕擷取畫面 2024-04-29 181954](https://hackmd.io/_uploads/BJNdExT-0.png) 除了先前使用 req.params 取得動態路由外,也可在 url 帶入相關資訊,再使用 req.query 取出網址列的參數 舉例:/posts?page=1&count=10 (貼文頁面篩選第一頁前 10 筆資料) 其中 ? 用來連接欲帶入的參數 page 及 count,= 前後分別為參數名稱(page)與參數的值(1),不同參數之間使用 & 分隔 當使用者造訪此網址時, express 可以使用 req.query 取出網址列的這些參數 ![螢幕擷取畫面 2024-04-29 183800](https://hackmd.io/_uploads/HJIltgpZ0.png)