"/"
: DB에 연결하여 DB 에 있는 모든 영화의 제목들을 볼 수 있는 메인 페이지
"/:id"
: 각 영화 제목을 누르면, 해당 영화의 구체적인 정보를 볼 수 있는 페이지
"/filter"
: 연도별 및 별점 필터링 기능
소요기간 : 이전 프로젝트와 동일한 형태이며, 데이터를 받아오는 방법만 변경하였습니다.
사용한 기술 스택 : Nodejs, axios
전체 코드 보기 : 깃허브 링크 바로가기
사용한 영화 API : https://yts.mx/api
// db.js
//movieController.js
- 5번째줄: axios.create()
- 15번째줄: client.get() -> get 메서드. 정보를 가져온다. https://yts.mx/api/v2/list_movies.json?limit=50 페이지 속 data 긁어오는 것과 같다!
- get 메서드로 대체 어떤 정보를 가져오는지 알아보자. 우선 response 변수 만들어서 console.log 해봤더니,
data 안에, data 안에, movies 가 있었다는 것을 확인할 수 있었다.
data.data 안의 movies 를 console.log 찍어봤더니,
다음과 같은 정보들이 나왔다. 굿. 이것을 이용하는 것.
({
data: {
data: { movies }
}
} = await client.get("/list_movies.json", { params: { limit: 50 } })
);
({
data: {
data: {
movies:movies } //이름같으므로 생략 가능
}
} = await client.get("/list_movies.json", { params: { limit: 50 } })
);
let movies = []
라고 만든 빈배열에 get 메서드로 받아온 정보를 넣는다! 참고로, movies 라는 이름이 같으므로 생략해준 것이다.
https://axios-http.com/docs/intro