[해결법] MongoClient.connect()가 콜백을 실행하지 않고 무한 대기하는 현상
1011
초심자 입장에서 해결하기 어려웠던 문제가 있어 공유드립니다.
선생님 혹은 잘 아시는 분들이 내용이 맞는지 검증해주시기를 부탁드립니다.
문제
npm i mongodb로 설치하는 몽고디비 드라이버 버전이 5.0인 경우 connect()에 넣은 콜백함수가 실행되지 않는 현상이 있습니다. 이는 변경된 스펙때문인 것으로 보입니다.

사진 좌측은 강의에 사용된 4.3이고, 우측은 제가 사용한 5.0입니다. 5.0에는 콜백을 인수로 받는 함수원형이 기재되어있지 않습니다.
해결
해결 방법 예시 두 가지를 공유드립니다.
아래와 같이 then-catch 합니다. (제가 이렇게 했습니다.)
MongoClient.connect(MongoURL)
.then(database => {
app.listen(port, () => {
console.log(`Example app listening on port ${port}`);
});
db = database.db('Express');
post = db.collection('posts');
})
.catch(err => {
console.log(err);
return;
})
.finally(() => {
console.log('끝');
});
아래 가이드의 코드를 따라합니다.
https://mongodb.github.io/node-mongodb-native/5.0/#connect-to-mongodb
감사합니다.
자세한 설명은 블로그에 달아두었습니다.
답변 0
진로 관련해서 질문 남깁니다...
0
402
0
요즘시장에 MERN스택으로 개발하는 프로젝트가 많이 있는지 궁금합니다.
0
449
1
대대형
1
383
1
보충 강의 감사합니다
0
396
0
언어 문법을 모르는데 어떻게 잘못된 코드를 작성하지 않을 수 있나요?
0
550
2
공부 순서 고민
0
574
1
update 함수 문의
0
408
0
도대체 다들 공부는 어떻게 하시는 건가요?
0
553
2
테스트를 위한 객체 오류와 createQueryBuilder 사용 방법 질문있습니다!
0
535
1
디테일 메인페이지에서 상세페이지로 가는 링크 부분
0
445
0
nestjs s3 파일업로드 진행중인데 Buffer속성이 없어요
0
604
0
swr 구현 질문입니다.
1
700
2





