文章不易,請關注公眾號 毛毛蟲的小小蠟筆,多多支持,謝謝
問題
koa是怎麼處理異常的?
分析
首先了解下node.js是怎麼處理異常的
一般來説,node.js頂層有個uncaughtException事件,當異常沒被捕獲的時候,就會一層層上升,直到觸發定義好的uncaughtException事件。
但有個問題,node.js最大的特點是異步機制。比如讀取文件信息的stat的異步寫法:
require('fs').stat('test.txt', function(err, res) {
if (err) {
throw err;
}
})
如果讀取文件信息過程中出錯了,比如文件不存在。那就會執行throw err。
就算用了try catch,也不能捕獲異步函數。
詳情 請查看:毛毛蟲的小小蠟筆