Week 07 클론 프로젝트 || Clone Instagram 📱 5조
글로벌 기업 META 의 핵심 서비스인 Instagram 을 클론 코딩하여, 실제 서비스에서 어떤 기능이 구현되어 있는지 살펴보고, 새로운 기능들을 구현하는 동시에 현업에서 백엔드 개발자가 어떤 능력을 필요로 하는지 알아보자!
실전 프로젝트 전 마지막 스텝을 잘 밟는 것이 우리의 최종 목표 !! 🧗🏻
와이어 프레임
1. 로그인 페이지 (로그인, 회원가입, 메인페이지 이동)
2. 회원가입 페이지 (아이디, 비밀번호 유효성 검사, 중복확인 | 회원가입 버튼 | 로그인 페이지 이동)
3. 피드(게시글 리스트) (피드 전체 프레임 | 좋아요 | 댓글 입력(입력만) | 슬라이드 X)
4. 게시글 상세 페이지 (본인이 작성한 댓글 삭제 버튼 ⇒ 댓글 삭제)
5. 게시글 작성 / 수정 페이지 (이미지 업로드 및 내용 작성 / 수정)
6. 게시글 삭제
API 명세서
🧑🏻💻 Roles & Responsibilities
- 권규민 : JWT 를 이용한 회원가입, 로그인 구현 및 BE 전반적인 SUPPORT
- 권윤주 : 댓글 작성, 삭제, 수정, 좋아요 기능 구현
- 김태현 : 게시글 작성(s3 사용 이미지 업로드), 삭제, 수정 구현
- AWS RDS(MySQL)
- AWS S3
- FileZilla
좋아요 취소 문제
* findTrouble
하나의 게시물에 좋아요를 취소하면, 내가 클릭한 모든 좋아요 기록 삭제
* fix
특정 게시물의 로그인한 유저의 좋아요 정보만 삭제됬어야했는데 , 현재 게시글 정보를 전달하지 않아서 해당 유저가 좋아요한 모든 게시글의 좋아요 정보가 전부 삭제되는 문제
게시글 삭제 안되는 문제(엔티티 영속성 전이)
* findTrouble
좋아요가 되어 있을 경우 게시글 삭제가 안되는 문제가 발생. 아마도 Posts, Likes 엔티티의 연관관계에서 영속성 전이 문제라고 의심
* fix
참조무결성 제약 조건 때문에 게시글에 좋아요 데이터가 존재할 시, 게시글이 삭제가 안됐다. 👉 cascade 옵션으로 해결
이모지 잭슨 파싱 오류 예외 처리
* findTrouble
게시물(String 타입의 contents 필드)에 이모지가 있을 경우, 필드에 빈값을 허용하게 되서 예외가 발생
* fix
config 패키지에 Xss Filter를 처리하는 클래스에서 emoji jackson parse 오류에 따른 예외 처리 부분 추가