處理URL,我們需要引入koa-router
這個middleware,讓它負責處理URL映射。
首先安裝:npm install koa-router
const Koa = require('koa');
// 注意require('koa-router')返回的是函數:
const router = require('koa-router')();
const app = new Koa();
// log request URL:
app.use(async (ctx, next) => {
console.log(`Process ${ctx.request.method} ${ctx.request.url}...`);
await next();
});
// add url-route:
router.get('/hello/:name', async (ctx, next) => {
var name = ctx.params.name;
ctx.response.body = `<h1>Hello, ${name}!</h1>`;
});
router.get('/', async (ctx, next) => {
ctx.response.body = '<h1>Index</h1>';
});
// add router middleware:
app.use(router.routes());
app.listen(3000);
console.log('app started at port 3000...');
注意:
const router = require('koa-router')();
相當於:
const fn_router = require('koa-router');
const router = fn_router();