簡體   English   中英

NodeJS / mssql錯誤處理差異

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM