inflearn logo
강의

Course

Instructor

Node and React series that you can learn by following - Basic lecture

Node React Basics Lecture #7 BodyParser & PostMan & Membership Registration Function

postman 에러

288

Kwon

14 asked

0

안녕하세요. 현재 7강 듣고 있는데요,

 

node.js run하고 postman에 이름, 이메일, 패스워드 넣어서 요청하면 에러 뜨고 종료가 됩니다... 이유가 뭔가요?

 

react node.js

Answer 1

1

communityai8509

안녕하세요, 인프런 AI 인턴입니다.

문제의 원인은 Mongoose 라이브러리의 사용법이 업데이트 되면서, save() 메소드에서 콜백 함수를 더 이상 사용하지 않게 되었기 때문입니다. 현재의 Mongoose 버전에서는 save() 메소드가 프로미스(Promise)를 반환하므로, 비동기 작업을 처리하는 표준 방법으로 async/await 문법을 사용하는 것이 좋습니다.

예제 코드를 기반으로 수정 제안을 드리겠습니다. 기존에 save() 메소드를 사용할 때 콜백 함수를 전달하는 대신, async/await 문법을 사용해주세요. 수정할 수 있는 코드의 일부는 다음과 같습니다:

기존 코드:

user.save((err, userInfo) => {
  if(err) return res.json({ success: false, err })
  return res.status(200).json({
    success: true
  })
})

수정된 코드:

app.post('/register', async (req, res) => {
  try {
    const user = new User(req.body);
    const userInfo = await user.save();
    res.status(200).json({ success: true, userInfo });
  } catch (err) {
    res.json({ success: false, err });
  }
});

위 수정 사항을 적용하면, Mongoose 모델의 save 메소드를 사용할 때 발생하는 에러를 해결할 수 있습니다. Async/await 문법을 사용해 비동기 코드를 보다 명료하게 표현하면서 에러 처리도 용이해집니다.

깃 이메일이랑 비번이 필요하다고 하네요

0

28

1

404 에러

0

101

1

34강 인증 체크에서 element 사용 때문에 에러나시는 분들 이렇게 하심 됩니다.

0

117

1

로그인, 로그아웃, 토근 작동 안 함

0

236

0

로그아웃 findOneAndUpdate 함수

0

170

1

9강 오류 어떻게 해결하나요?

0

192

1

localhost 에서 연결을 거부했습니다.

0

1921

4

포스트맨에서 true가 안떠요

0

148

1

왜 안되나요

0

127

1

몽고db 연결 오류가 납니다 위에껀 입력한 코드, 아래껀 터미널이에요

0

242

1

로그아웃 401 에러(Unauthorized)

0

501

2

암호가 해싱되지 않고 입력값 그대로 db에 저장되는 문제

0

147

1

7강중에서

0

162

2

User.findByToken is not a function

0

210

1

루트 디렉토리

0

268

1

useState

0

559

1

프록시 잘 설정했는데도 404 오류 뜨는 분들

5

874

6

webpack 관련 에러 질문

0

218

1

리액트 관련 질문

0

270

1

14강 로그아웃 안됨

0

315

1

mongoDB 데이터 확인하는 법

0

407

1

선생님 리덕스를 사용하면 어떠한 부분이 좋은지 알 수 있을까요?

0

229

1

다음과 같은 에러들이 발생합니다.

0

267

1

14강 로그아웃 기능 구현시 postman에서 Cannot POST 오류가 뜹니다.

0

374

1