-
REST API 서버 만들기 (6) - CRUD 메서드 만들기Server 2020. 4. 6. 11:34
<참고>
REST API 서버 제작 수업을 듣고 포스팅을 하는 게시글 입니다.
서버 개발자가 아니고, 노드를 전문적으로 사용하는 개발자가 아니기에 오류가 있을 수 있습니다.
윈도우로 진행하시는 분들은 콘솔 명령어 수행 시 GitBash 사용을 권장드립니다.
이번 강의에서 작업 할 내용
- Route 파일 작성하기
- GET [ SELECT ] 하기
- POST [ INSERT ] 하기
- PUT [ UPDATE ] 하기
- DELETE [ DELETE ] 하기
Route 파일 작성하기
REST API는 총 3가지를 담고 있습니다.
http://localhost:3000/{field}?{query}&{query}
body : { body }
이 중에서 query 와 body 는 controller.js 에서 체크를 합니다.
즉, controller.js 로 들어가기 이전인 field 체크만 route에서 분기를 태워서 해당 controller.js의 함수를 실행시켜 주면 됩니다.
필드를 받기 위해서는 ":(fieldname)" 형식으로 추가해주시고 controller 에서 params 로 받으시면 됩니다.
GET [ SELECT ] 하기
우리가 REST API 에서 검색을 하는 방법은 2가지가 있습니다.
다중 검색 : localhost:3000/users
단일 검색 : localhost:3000/users/1
하지만 위와 같이 패스를 구성 한다면 한가지 문제가 생깁니다.
바로 id 와 username 두가지로 검색을 하고 싶을때 못한다는 것이죠
그래서 간결하게 query를 이용해서
다중 검색 : localhost:3000/users
조건 검색 : localhost:3000/users?id=1
이렇게 코드를 작성해 보았습니다.
POST [ INSERT ] 하기
추가는 create 함수 입니다.
간단하게 body에서 데이터 정보들을 담아서 보내주면 됩니다!
PUT [ UPDATE ] 하기
수정은 update 함수입니다.
수정의 경우에는 유저 Model에서 Password만 수정을 하기에 body에서 password만 가져와서 수정을 진행하도록 합니다
DELETE [ DELETE ] 하기
삭제는 destroy 함수입니다.
이로써 간단하게 DB 연결 후 Sequelize 로 CRUD 작업을 해보았습니다.
하지만 이렇게는 API를 배포할 수 없고 권한과 여러가지 보안 작업을 더해보도록 하겠습니다.
'Server' 카테고리의 다른 글
REST API 서버 만들기 (8) - UUID (0) 2020.04.12 REST API 서버 만들기 (7) - 패스워드 암호화 및 JWT 발급하기 (0) 2020.04.10 REST API 서버 만들기 (5) - Sequelize Model, Migration (0) 2020.04.01 REST API 서버 만들기 (4) - Dotenv, Sequelize 설치 및 세팅하기 (3) 2020.04.01 REST API 서버 만들기 (3) - Router 와 Controller (0) 2020.03.31