使用下一代web開發框架koa2搭建本身的輕服務器

Koa 是由 Express 原班人馬親情打造的新一代web框架。既然已經有 Express 了,爲何又要搞一個Koa出來呢?由於 Koa 相比 Express 體積更小,代碼更健壯,做用更純粹html

Koa2 使用最新的 ES6 語法和 aync 函數進行開發,所以 Koa2 要求 nodejs 的版本不低於 7.6.0。node

使用 Koa 建立一個服務器很是簡單,新建文件 app.js,放置如下代碼:git

const Koa = require('koa');
const app = new Koa();

app.use(async ctx => {
  ctx.body = 'Hello World';
});

app.listen(3000);
console.log('listening 3000 ...');

且先無論具體的語法含義,先運行該文件node app.js,即建立並啓動了一臺服務器,在瀏覽器中輸入網址 http://localhost:3000 便可以看到es6

Hello Worldgithub

之因此說Koa做用更純粹,是由於Koa自己只提供了有限的最基本的功能,一切須要的額外功能都是經過中間件實現,好比路由管理,log日誌,錯誤處理等等。所謂中間件,就像中間人同樣,全部與客戶端之間的通訊都要通過它們,它們會對會話的輸入和輸出作具體的處理。web

服務器說白了不就是接受客戶端請求(一般是一個url)並返回相應資源的一個東西嘛,所以路由管理器(koa-router)應該是(koa)最爲重要的一箇中間件了。接下來給 app 添加路由:json

const Koa = require('koa');
const app = new Koa();

const Router = require('koa-router');
const router = new Router();

router.get(/.*/, async (ctx, next)=>{   // 匹配 get 請求
    ctx.body = `Your request url is: ${ctx.path}`;
});
app.use(router.routes());

app.listen(3000);
console.log('listening 3000 ...');

運行 app 以後在瀏覽器中隨便輸入一個地址 http://localhost:3000/your/url 就能看到瀏覽器

Your request url is: /your/url服務器

這只是一個簡單例子,實際上你能夠返回一張圖片,json數據,html頁面等等。app

相關文章
相關標籤/搜索