MongoDB ड्राइवर का उपयोग करते समय 2 अलग-अलग प्रकार की कनेक्शन त्रुटियां होती हैं:
- प्रारंभिक कनेक्शन के दौरान त्रुटियां
- प्रारंभिक कनेक्शन स्थापित होने के बाद त्रुटियां
(2) को संभालने के लिए 'त्रुटि' घटना का उपयोग किया जाता है। ऐसा लगता है कि आप प्रारंभिक कनेक्शन त्रुटियों को संभालने का सही तरीका ढूंढ रहे हैं। उनके लिए, आपको या तो connect()
. पर कॉलबैक पास करना चाहिए या .catch()
इस वादे पर कि connect()
रिटर्न।
const NUM_RETRIES = 3;
const delay = 1000;
let error = null;
for (let i = 0; i < NUM_RETRIES; ++i) {
if (i > 0) {
await new Promise(resolve => setTimeout(resolve, i * delay));
}
try {
await mdb.MongoClient.connect(uri);
break;
} catch (err) {
error = err;
}
}