Я пытаюсь исправить ошибку UnhandledPromiseRejectionWarning: Error: querySrv ECONNREFUSED
при выполнении вызова ax ios для получения пользовательских данных из запроса mon goose без подключения inte rnet. Я попытался обернуть оба запроса mon goose User.findOne()
и mongoose.connect()
на try catch
, но ошибка все равно осталась.
(node: 3966) UnhandledPromiseRejectionWarning: Ошибка: querySrv ECONNREFUSED _mongodb._tcp.cluster1-94jth.mongodb. net [0] в QueryReqWrap.onresolve [as oncomplete] (dns. js: 196: 19) [0] (узел: 3966) UnhandledPromiseRejectionWarning: обещание отклонения. Эта ошибка возникла либо из-за выброса внутри функции asyn c без блока catch, либо из-за отклонения обещания, которое не было обработано с помощью .catch (). (идентификатор отказа: 1) [0] (узел: 3966) [DEP0018] DeprecationWarning: необработанные отклонения обещаний устарели. В будущем необработанные отклонения обещаний завершат процесс Node.js с ненулевым кодом выхода.
FRONT-END
client. js
try {
const res = await axios.get('/auth/user?', {
params: {
refreshToken: refreshToken,
userID: userID
}
}
);
console.log(res.data);
} catch (error) {
if(error.toJSON().message === 'Network Error'){
alert('no internet connection');
}
}
BACK-END
auth.routes. js
auth.get(
'/user',
async(req, res)=>{
try {
const {userID, refreshToken, uniqueDeviceID, authTimestamp} = req.query;
const existingUser = await User.findOne({
$and: [
{'user_id': userID},
{'refresh_token': refreshToken}
]
});
res.send(existingUser);
} catch (error) {
console.log(error);
}
}
);
server. js
try {
mongoose.connect(keys.mongoURI, {useNewUrlParser: true, useUnifiedTopology: true, useCreateIndex: true});
console.log('Database Connected');
} catch (error) {
console.log(error);
}