인프런 커뮤니티 질문&답변

Taro Be님의 프로필 이미지
Taro Be

작성한 질문수

Svelte.js [Core API] 완벽 가이드

5. Await 블록으로 영화 검색 API 예제 리팩토링

Promise 안에 async가 있는 것은 중첩된 비동기 코드로 이해하면 될까요?

작성

·

419

1

Heropy님 좋은 강의 감사합니다.

searchMovies()함수의 구조가 Promise 안에 async가 들어있는 중첩구조처럼 느껴집니다. 한 번만 비동기를 해도 될 것 같은데 비동기 코드 안에서 비동기가 다시 실행되는 것처럼 느껴져서 혼란스럽습니다.

결국 작동원리와 오브젝트의 흐름이 파악되지 않아서 fetch()로 바꿔봤는데요, 이런 접근에 어떤 장단점이 있을까요?

promise = fetch(`http://www.omdbapi.com/?apikey=${apikey}&s=${title}`)
	.then(res => res.json())
	.then(data => data.Search)

답변 1

1

HEROPY님의 프로필 이미지
HEROPY
지식공유자

네 Taro Be 님 안녕하세요.😄

해당 내용을 중첩된 비동기로 이해하신 것이 맞습니다.

특별한 장단점이 있다고 생각하진 않네요.

잘 정리하신 것 같아요!👍

만약 axios를 fetch 메소드로 변경해도 searchMovies 함수는 유지하는 게 좋을 듯합니다.

다음과 같이 수정해서 사용하세요~

function searchMovies() {
return fetch('https://ww.omdbapi.com/?i=tt3896198&apikey=7035c60c')
.then(res => res.json())
.then(data => data.Search)
}
Taro Be님의 프로필 이미지
Taro Be

작성한 질문수

질문하기