반응형
***본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.
엔드포인트 = 우리의 요청을 수행하는 하나의 로직이 흘러가는 시작과 끝
@Controller('movie')
export class AppController {
private movies: movie [] = [
{id: 1,
title:'해리포터',
characters: ['해리포터','엠마왓슨'],
},
{id: 2,
title:'반지의 제왕',
characters: ['간달프'],
}
];
// 아래 추가
private idConunter =3;
@Post()
postMovie(
@Body('title') title: string, // ① HTTP 요청 바디에서 'title' 값을 추출
) {
const movie: Movie = { // ② 새로운 영화 객체를 생성
id: this.idConunter++, // ③ 새로운 영화의 ID를 부여하고, idCounter 값을 증가
title: title, // ④ title 값을 movie 객체에 저장
};
this.movies.push(movie); // ⑤ 생성한 movie 객체를 배열에 추가
return movie; // ⑥ 추가된 movie 객체를 클라이언트에게 반환
}
1️⃣ @Body('title') title: string
- HTTP 요청의 body에서 "title" 키의 값을 받아서 title 변수에 저장합니다.
- 즉, 클라이언트가 아래와 같은 JSON을 요청하면:
json복사편집{ "title": "인셉션" }
2️⃣ const movie: Movie = {}
- 새로운 영화를 저장하기 위한 객체(movie)를 생성합니다.
3️⃣ id: this.idConunter++
- 각 영화에 고유한 ID를 부여합니다.
- this.idConunter++는 현재 idConunter 값을 movie.id에 할당한 후 1 증가시킵니다.
- 예를 들어 idCounter가 3이었다면:
- id: 3으로 영화 객체가 생성됨
- idCounter 값이 4로 증가하여, 다음 영화는 id: 4가 됨
4️⃣ title: title
- 요청받은 title 값을 movie 객체에 저장합니다.
5️⃣ this.movies.push(movie);
- 새로 생성된 movie 객체를 movies 배열에 추가합니다.
- 즉, 기존 영화 목록에 새로운 영화가 추가됩니다.
6️⃣ return movie;
- 방금 추가된 movie 객체를 클라이언트에게 반환합니다.
- 클라이언트가 API 요청을 보내면 응답으로 다음과 같은 JSON을 받습니다:
json복사편집




#패스트캠퍼스 #직장인자기계발 #직장인공부 #환급챌린지 #패스트캠퍼스후기 #오공완
https://bit.ly/4hTSJNB
반응형