inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Express 튜토리얼 : 웹 서비스를 위한 핵심 API

Connecting MongoDB : MongoDB 어플리케이션에 연결하기

[해결법] MongoClient.connect()가 콜백을 실행하지 않고 무한 대기하는 현상

1011

wonjinYi
0

초심자 입장에서 해결하기 어려웠던 문제가 있어 공유드립니다.

선생님 혹은 잘 아시는 분들이 내용이 맞는지 검증해주시기를 부탁드립니다.

 

문제

npm i mongodb로 설치하는 몽고디비 드라이버 버전이 5.0인 경우 connect()에 넣은 콜백함수가 실행되지 않는 현상이 있습니다. 이는 변경된 스펙때문인 것으로 보입니다.

사진 좌측은 강의에 사용된 4.3이고, 우측은 제가 사용한 5.0입니다. 5.0에는 콜백을 인수로 받는 함수원형이 기재되어있지 않습니다.

 


해결

해결 방법 예시 두 가지를 공유드립니다.

  1. 아래와 같이 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('끝');
	});

 

  1. 아래 가이드의 코드를 따라합니다.

https://mongodb.github.io/node-mongodb-native/5.0/#connect-to-mongodb

 


감사합니다.

 

자세한 설명은 블로그에 달아두었습니다.

https://velog.io/@yiwonjin/MongoClient.connect%EC%9D%98-callback%EC%9D%B4-%EC%8B%A4%ED%96%89%EB%90%98%EC%A7%80-%EC%95%8A%EB%8A%94-%ED%98%84%EC%83%81

express 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