安裝全域性腳手架:npm i -g koa-generator
使用:koa2 -e koa2-learn
cd koa2-learn
npm install
npm i --update-binary
npm run dev
宣告了async , 可以沒有await , 反之則不可以。
router.
get(
'/testasync'
,async
(ctx)
=>
,3000)}
) ctx.body =
})
注意兩點:
有多個await的時候, 自上而下執行
await後面跟的是乙個promise物件, 如果不是, 就會自動轉換.
比如說:let a = await '3' === let a = await promise.resolve('3')
引入核心包koa => 建立koa例項 => 使用中介軟體
寫入順序和輸出順序相反實現幾個簡單中介軟體
function
pv(ctx)
module.
exports
=function()
}
疑問: ctx 是什麼?
答:在中介軟體機制中, 服務端有乙個物件, 掛載了response和request. 這個物件就是ctx.疑問: 什麼是洋蔥圈機制?
答:
koa.
use(m1)
;koa.
use(m2)
;koa.
use(m3)
;執行如下:
----
----
----
----
-start m1
start m2
start m3
end m3
end m2
end m1
使用:
const router =
require
('koa-router')(
)//render渲染
router.
get(
'/',
async
(ctx, next)
=>)}
)//body 寫給客戶端
router.
get(
'/string'
,async
(ctx, next)
=>
)//匯出
module.exports = router
const index =
require
('./routes/index'
)const users =
require
('./routes/users'
)// routes
use(index.
routes()
, index.
allowedmethods()
)use
(users.
routes()
, users.
allowedmethods()
)
問題: 如何讀寫cookie?
寫:ctx.cookies.set('pvid', math.random())
讀:cookie: ctx.cookies.get('pvid')
架構小談之美團外賣
美團外賣,大家都很熟悉,與我們的生活已經緊密相連了。今天有機會讀到了關於美團外賣架構的文章。都說打敗速食麵企業的不是另一家速食麵企業,而是先在的網際網路外賣公司,下面,根據自己讀了美團外賣框架介紹,談一談自己的美團外賣框架的一些認識。好的架構源於不停地衍變,而非設計。對於外賣android客戶端的平...
2019 3 21消滅仿美團實戰產品列表頁開發
1 limit 與 slice 簡單的講,乙個作用資料庫返回的集合。乙個作用陣列 2 生成26個英文本母的陣列 split 3 ssr方式與非同步獲取 a ssr即服務端一次頁面html檔案時,即傳送了axios,並將需要的資料響應回來。不用二次axios請求回來渲染頁面。同步渲染 ssr方式有 v...
美團網筆試題之正約數
題目是這樣的 50個燈,有50個按鈕,編號為1,2,3 50.剛開始燈全部是熄的,現在依次按按鈕,每次按到按鈕i,i的倍數編號的燈就變一下狀態,問到最後開了幾盞燈。這裡考的問題其實就是乙個數字的正約數的個數是奇數還是偶數的問題。然後,我還發現了,這個題是小學六年級的數學題 尼瑪啊!其實對於我這樣的準...