inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

10-04 상품 수정 API

상품수정 API 질문

해결된 질문

283

kql 1

작성한 질문수 43

0

 상품 수정 api 질문합니다. 지금 보시면 update에는 async,await가 붙어있는데 데이터베이스를 거쳐 resolver로 가져오면 굳이 안붙어도 된다고 하셨는데 왜 붙어있는지 궁금합니다

async update(
{product,updateProductsService
}:IProductsServiceUpdate):promise<Product> 
{
 const product=await this.findOne({productId}) this.checkSoldout({product}) }

javascript node.js docker rest-api nestjs

답변 2

0

노원두

안녕하세요! kql1님!

express만 사용하였을 때와는 달리, nestjs는 결과를 기다렸다가 최종적으로 응답하게 됩니다!
(반면, express는 그렇지 않아요! 간단한 실험을 통해서도 확인해 보실 수 있습니다!^^)
따라서, async/await를 안써주셔도 최종 응답으로 기다린 결과를 받게 되실 수 있어요!

하지만 명확히 써주시는게 더 좋을 것 같네요!^^

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.
kql님의 질문에 답변드리겠습니다.

JavaScript의 async/await 구문은 비동기 작업을 동기적으로 표현할 때 사용합니다. async로 함수를 선언함으로써 해당 함수 내부에서 비동기 작업을 기다릴 수 있는 await 키워드를 사용할 수 있게 됩니다. 여기서 말씀하신 코드에서 async를 사용한 이유는 내부에서 await를 통해 데이터베이스 조회 결과를 기다리고 있기 때문입니다. findOne 함수는 데이터베이스에서 상품을 조회하는 비동기 작업을 수행하며, await를 사용하여 그 결과가 나올 때까지 기다리고 있는 것입니다.

즉, 데이터베이스 작업이 있고 그 결과를 기다려야 할 때는 해당 함수를 async로 선언하고, 결과를 받아오기 위해 await를 사용하는 것이 필요하다고 할 수 있습니다. 이는 데이터베이스 작업이 비동기로 처리되기 때문에 JavaScript 엔진이 해당 작업이 완료될 때까지 다른 코드로 넘어가지 않도록 제어하기 위함입니다.

resolver에서 데이터베이스 작업이 포함된 경우라면 async/await를 사용하는 것이 정상적인 코드 작성 방법입니다.

그래프 ql 문서 사용할때 느낌표 남는거 어떻게 없애나요?

0

82

2

강의 전체 소스 코드를 받고싶습니다.

0

75

2

fontawesome 사용 문의

0

76

2

소스 코드 부탁드립니다~

0

85

2

깃 레포지터리 소스

0

80

2

커리큘럼12.css 정렬 에 나오는 과제 정답알고싶어요

0

72

2

10-01 Entity TypeOrmModule.forRoot 에 entities

0

84

3

강의 버전관련 문의입니다

0

102

2

Ubuntu 설치 관련

0

60

1

schema.gql 질문 드립니다.

0

50

1

서버 재실행시 Many to Many

0

100

3

input 관련 문의

0

89

2

Rest API 보다는 graphql이 주된 내용인데

0

130

2

강의 전체 소스코드 받을수있을까요?

0

154

1

도커볼륨 마운트 관련

0

126

2

findOne 타입스크립트오류

0

108

1

http => htrtps 호출 인증서 신뢰 오류

0

348

1

self-signed certificate in certificate chain 에러 발생

0

410

1

mongoose 설치 오류

0

141

1

특정 API, 특정 IP 허용 (단일경로에 CORS 활성화)

0

280

2

08-06

0

177

3

구조랑 패턴 관련해서 질문

0

124

2

mydocker

0

128

2

coolsms statuscode 2000 인데 전송안돼는 경우 확인.

0

156

1