[英]NodeJS/mssql error handling differences
我剛剛開始使用mssql包從NodeJS查詢數據庫。 我的問題是關於錯誤處理的...對於初學者,這是我的模塊導入:
const sql = require('mssql');
const config = require('./pathToMyConfig.js');
我可以看到該模塊公開的大多數方法都可以作為Promise處理, .catch()
可用於處理錯誤。
sql.connect(config).query("SELECT * FROM Customers").then().catch(err => {...});
但是我也可以在文檔中看到,有時它們在導入的mssql模塊上調用.on('error')
。
sql.connect(config).query().then();
sql.on('error', err => {...});
2和有什么區別? 我想.catch
只處理該Promise主體上.on('error')
,而.on('error')
處理所有未被捕獲.on('error')
?
是否還有其他差異,或者與此相關的約定?
sql.on('error', err => {...});
如果初始化連接時發生錯誤,將調用。 這使您可以在初始化期間處理任何異常。
.catch(err => {...})用於捕獲執行查詢期間發生的任何錯誤。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.