1、說明 http express 和 koa 的路由引數分別怎麼獲取
express:
router.get('/student/:id',function(req, res, next))
koa:
ctx.request.query
ctx.query
2、簡單說明動態路由
動態獲取路由位址,在對特定位址經行路由3、說明 express 和 koa 的中介軟體的使用//動態路由
//index沒有引數,導致路由無法匹配
//:佔位符
// 接收請求
console.log(req.params)
//get請求引數
res.send(req.params)
});
express中介軟體乙個接乙個的順序執行, 通常會將 response 響應寫在最後乙個中介軟體中
koa2的中介軟體是通過 async await 實現的,中介軟體執行順序是「洋蔥圈」模型。中介軟體之間通過next函式聯絡,當乙個中介軟體呼叫 next() 後,會將控制權交給下乙個中介軟體, 直到下乙個中介軟體不再執行 next() 後, 將會沿路折返,將控制權依次交換給前乙個中介軟體。
4、簡述 koa 的洋蔥圈模型
1const koa = require('
koa'
) ;2
const router = require('
koa-router');
3//建立路由物件
4var router = require('
koa-router
')() ;56
koa() ;78
//洋蔥圈模型
10 console.log('
開始執行第乙個中介軟體
') ;
11await next() ; //
第乙個執行完先掛起來去執行第二個中介軟體
12 console.log('
第乙個中介軟體執行完成
') ;
13})
15 console.log('
開始執行第二個中介軟體
') ;
16await
next() ;
17 console.log('
第二個中介軟體執行完成
') ;
18})
20 console.log('
開始執行第三個中介軟體
') ;
21await
next() ;
22 console.log('
第三個中介軟體執行完成
') ;
23})
2425
//路由請求
26 router.get('
/',async (ctx) =>)
2930
31//
啟用路由
3233
.use(router.allowedmethods())
3436 console.log('
伺服器已啟動,3000埠監聽中...
') ;
37 })
5、擴充套件:了解 websocke
websocket 是 html5 開始提供的一種在單個 tcp 連線上進行全雙工通訊的協議。
websocket 使得客戶端和伺服器之間的資料交換變得更加簡單,允許服務端主動向客戶端推送資料。在 websocket api 中,瀏覽器和伺服器只需要完成一次握手,兩者之間就直接可以建立永續性的連線,並進行雙向資料傳輸。
在 websocket api 中,瀏覽器和伺服器只需要做乙個握手的動作,然後,瀏覽器和伺服器之間就形成了一條快速通道。兩者之間就直接可以資料互相傳送。
建立 websocket 物件
var socket = new websocket(url, [protocol] );
以上**中的第乙個引數 url, 指定連線的 url。第二個引數 protocol 是可選的,指定了可接受的子協議。
websocket 屬性
socket.readystate 唯讀屬性 readystate 表示連線狀態,可以是以下值:
0 - 表示連線尚未建立。
1 - 表示連線已建立,可以進行通訊。
2 - 表示連線正在進行關閉。
3 - 表示連線已經關閉或者連線不能開啟。
socket.bufferedamount 唯讀屬性 bufferedamount 已被 send() 放入正在佇列中等待傳輸,但是還沒有發出的 utf-8 文字位元組數。
websocket 事件
socket.onopen 連線建立時觸發
socket.onmessage 客戶端接收服務端資料時觸發
socket.onerror 通訊發生錯誤時觸發
socket.onclose 連線關閉時觸發
websocket 方法
socket.send() 使用連線傳送資料
socket.close() 關閉連線
FormatMessage簡單說明
常用引數簡介.formatmessage format message from system format message allocate buffer,null,lval,null,lptstr hlocal,0,null 第乙個引數是標誌,告訴這個formatmessage函式,我想要的特點...
Subversion 簡單說明
subversion 簡單說明 checkout 從源 管理伺服器取出 commit 提交更新的 到源 管理伺服器。update 從源 管理伺服器獲取 的最新更新。export 從源 管理伺服器匯出 匯出的 將脫離源 管理。revert 將當前資料恢復到最近與伺服器同步的版本,即放棄自己的所有未提交...
std deque簡單說明
本文 http blog.chinaunix.net u2 86575 showart 1734758.html std deque是乙個高效的雙端佇列,可以高效地進行插入和刪除操作。以sgi c stl為例 deque的基本結構是 有乙個map map中的元素是乙個記錄了乙個大小為512位元組的線...