회원 API
1. 회원가입
Method | POST |
URI | /join |
HTTP status code | 성공 201 |
Request Body | { "email" : "사용자가 입력한 이메일", "password" : "사용자가 입력한 비밀번호", "passwordCheck" : "사용자가 더블 확인 한 비밀번호" } |
Response Body |
2. 로그인
Method | POST |
URI | /login |
HTTP status code | 성공 200 |
Request Body | { "email" : "사용자가 입력한 이메일", "password" : "사용자가 입력한 비밀번호" } |
Response Body | JWT Token |
3. 비밀번호 초기화 요청
Method | POST |
URI | /reset |
HTTP status code | 성공 200 |
Request Body | { "email" : "사용자가 입력한 이메일" } |
Response Body |
4. 비밀번호 초기화(=수정)
Method | PUT |
URI | /reset |
HTTP status code | 성공 201 |
Request Body | { "password" : "사용자가 입력한 비밀번호", "passwordCheck" : "사용자가 더블 확인 한 비밀번호" } |
Response Body |
도서API
1. 전체 도서 조회
// 이미지 경로, 조회시 아이템 8개씩 보여주기
// 카테고리 id 어떻게 알고 보내줄까?
Method | GET |
URI | /books |
HTTP status code | 성공 200 |
Request Body | |
Response Body | [ { "book_id" : "도서 id", "title" : "도서명", "category" : "도서 카테고리", "summary" : "요약 설명", "author" : "작가명", "price" : 가격, "likes" : 좋아요 수, "pubDate" : "출간일" }, { "book_id" : "도서 id", "title" : "도서명", "category" : "도서 카테고리", "summary" : "요약 설명", "author" : "작가명", "price" : 가격, "likes" : 좋아요 수, "pubDate" : "출간일" }, ... ] |
2. 개별 도서 조회
// 이미지 경로
Method | GET |
URI | /books/:{bookId} |
HTTP status code | 성공 200 |
Request Body | |
Response Body | { "book_id" : "도서 id", "title" : "도서명", "category" : "도서 카테고리", "format" : "포맷", "isbn" : "isbn", "summary" : "요약 설명", "description" : "상세 설명", "author" : "작가명", "pages" : 쪽 수, "index" : "목차", "price" : 가격, "likes" : 좋아요 수, "liked" : boolean, "pubDate" : "출간일" } |
3. 카테고리별 도서 목록 조회
-new: true=> 신간조회(기준: 출간일 30일 이내)
// 이미지 경로, 조회시 아이템 8개씩 보여주기
// 카테고리 id 어떻게 알고 보내줄까?
Method | GET |
URI | /books?category={categoryId}&new={boolean} |
HTTP status code | 성공 200 |
Request Body | |
Response Body | [ { "book_id" : "도서 id", "title" : "도서명", "category" : "도서 카테고리", "summary" : "요약 설명", "author" : "작가명", "price" : 가격, "likes" : 좋아요 수 , "pubDate" : "출간일" }, { "book_id" : "도서 id", "title" : "도서명", "category" : "도서 카테고리", "summary" : "요약 설명", "author" : "작가명", "price" : 가격, "likes" : 좋아요 수 , "pubDate" : "출간일" }, ... ] |
좋아요 API
1. 좋아요 추가
Method | PUT |
URI | /likes/:{bookId} |
HTTP status code | 성공 200 |
Request Body | |
Response Body |
2. 좋아요 취소
Method | PUT |
URI | /likes/:{bookId} |
HTTP status code | 성공 200 |
Request Body | |
Response Body |
장바구니 API
1. 장바구니 담기
Method | POST |
URI | /cart |
HTTP status code | 성공 201 |
Request Body | { "book_id" : "도서 id", "count" : 수량 } |
Response Body |
2. 장바구니 조회
Method | GET |
URI | /cart |
HTTP status code | 성공 200 |
Request Body | |
Response Body | [ { "cartItem_id" : 장바구니 도서 id, "book_id" : 도서 id, "title" : "도서명", "category" : "도서 카테고리", "summary" : "요약 설명", "count" : 수량 "price" : 가격, }, { "cartItem_id" : 장바구니 도서 id, "book_id" : 도서 id, "title" : "도서명", "category" : "도서 카테고리", "summary" : "요약 설명", "count" : 수량 "price" : 가격, }, ... ] |
3. 장바구니 도서 삭제
Method | DELETE |
URI | /cart/:{bookId} |
HTTP status code | 성공 200 |
Request Body | |
Response Body |
주문 API
1. 장바구니에서 선택한 주문 상품 목록 조회
Method | GET |
URI | /cart/:{bookId} |
HTTP status code | 성공 200 |
Request Body | |
Response Body | [ { "cartItem_id" : 장바구니 도서 id, "book_id" : "도서 id", "title" : "도서명", "category" : "도서 카테고리", "summary" : "요약 설명", "count" : 수량 "price" : 가격, }, { "cartItem_id" : 장바구니 도서 id, "book_id" : "도서 id", "title" : "도서명", "category" : "도서 카테고리", "summary" : "요약 설명", "count" : 수량 "price" : 가격, }, ... ] |
'공부 > 타입스크립트로 함께하는 웹 풀 사이클 개발(React, Node.js)' 카테고리의 다른 글
프로젝트: Node.js 기반의 REST API 구현(4)-정리하기 (1) | 2024.10.01 |
---|---|
프로젝트: Node.js 기반의 REST API 구현(3)-ERD 도움받기 (1) | 2024.09.30 |
프로젝트: Node.js 기반의 REST API 구현(1)-스스로 설계해보기 (0) | 2024.09.26 |
백엔드 심화: 인증과 비동기처리(6)-미들웨어 이슈 해결, 로그인 인증-인가, 쿠키-세션-JWT, dotenv-.env, cookie-parser (2) | 2024.09.25 |
백엔드 심화: 인증과 비동기처리(5)-express-validator, 미들웨어(middleware) (0) | 2024.09.24 |