8/20 상품 등록 시 필요한 내용 정리, category 데이터 관리

낄낄박사·2024년 8월 20일

Gotcha

목록 보기
15/22

필수 정보

  • 상품 이름: 제품의 이름을 입력
  • 설명: 제품의 상세 설명을 작성
  • 가격: 제품의 가격을 설정
  • 할인율: 제품의 할인율을 설정
  • 재고: 제품의 재고 수량을 입력
  • 카테고리 ID: 대, 중, 소 카테고리명을 받아 해당 카테고리의 ID를 반환
  • 이미지: 썸네일 및 상품 이미지의 URLs
  • 쿠폰: 추후 구현

계획

  1. 인풋 5개 생성: 상품 이름, 설명, 가격, 할인율, 재고를 입력받을 인풋 필드 생성
  2. 카테고리 ID 처리:
    • 커스텀 훅 useCategory 만들기: 대/중/소 카테고리명을 받아 해당 카테고리의 ID를 반환하는 훅
  3. 이미지 업로드:
    • 스토리지에 이미지 업로드 후 URL 반환하는 커스텀 훅 사용: 이미지 업로드 및 URL 반환 처리
  4. Form 데이터 생성:
    • new Form을 사용하여 폼 데이터를 생성하고 엔드포인트로 데이터 전송
  5. 상품 등록 로직:
    • addProduct 로직 작성
  6. API 라우트에서 데이터 처리:
    • 서버에서 API 라우트 설정 및 데이터 처리 로직 구현

카테고리 관리 이슈 해결

문제 1: GET 요청에서 Body 포함 오류

  • 오류: failed to execute 'fetch' on 'Window': Request with GET/HEAD method cannot have body.
  • 이유: GET 및 HEAD 요청 메서드는 본래 body를 포함할 수 없음. 이 요청들은 주로 데이터를 서버로부터 가져오거나, 서버의 특정 리소스 상태를 확인하는 데 사용되기 때문.
  • 해결 방법:
    • body를 제거하고 쿼리 파라미터를 사용하여 데이터를 전달함.

문제 2: Supabase에서 카테고리 데이터 요청 시 빈 배열 반환

  • 이슈: Supabase에서 카테고리 데이터를 요청할 때 빈 배열이 반환됨.
  • 확인한 사항:
    • 프론트엔드, API 라우트, 비즈니스 로직 모두 이상이 없음.
  • 이유: Supabase의 Row Level Security (RLS)가 활성화되어 있었음.
  • 해결 방법:
    • RLS를 임시로 비활성화한 후 데이터를 정상적으로 반환받음.
    • 향후 계획: Policies를 업데이트하여 RLS를 관리할 예정.

0개의 댓글