[Koa2 系列 09] Koa-router(下)- 參數傳遞

[Koa2 系列 09] Koa-router(下)- 參數傳遞

我們分別學會了怎麼傳遞參數以及路由
這一篇來結合起來練習,使用的是最基礎的 GET 方法

const  Koa = require('koa')
const  Router = require('koa-router')

const  app = new Koa()
const  router = new Router()

router.get('/', function (ctx, next) {
 ctx.body = ctx.query
});

app
 .use(router.routes())
 .use(router.allowedMethods())

app.listen(3000, () => {
 console.log('starting at port 3000')
})

可以見到我們路由使用的是最簡單的 GET 方法
做的事情也是前幾篇使用過的 ctx.query 取得查詢條件
POST 就依樣畫葫蘆,基本上就搬進對應的路由內部就可以!

快速回憶一下 POST 請求怎麼做

  1. 安裝 koa-bodyparser
  2. 引入 koa-bodyparser
  3. 調用 koa-bodyparser
  4. 使用 ctx.request.body 取得 POST 請求的參數

順便講一下路由怎麼接收參數吧,這在網頁上常用
例如某個 id 的使用者

router.get('user/:id', function (ctx, next) {
 ctx.body = ctx.params.id
});

使用 ctx.params.id 來取得路由設定的 :id 內容
變數名稱可以自訂

留言