TIL 2023-11-22 뉴스피드 프로젝트01

장규빈·2023년 11월 22일

TIL

목록 보기
29/59
post-thumbnail

학습 목표

1.회원가입, 로그인을 구현, 간편로그인 구현 (OAuth2 + JWT)
2.인증/인가를 이해하고 JWT를 활용하여 계시물 등록 수정 삭제.
3.JPA를 이용한 데이터베이스 다루기

필수 기능

  • 사용자 인증 기능
    • 회원가입 기능
      • 새로운 사용자가 ID와 비밀번호의 형태로 서비스에 가입가능.
      • 밀번호는 안전하게 암호화
    • 로그인 및 로그아웃 기능
  • 프로필 관리
    • 프로필 수정 기능
      • 이름, 한 줄 소개와 같은 기본적인 정보를 볼 수 있어야 하며 수정 가능
      • 비밀번호 수정 시에는 비밀번호를 한 번 더 입력받는 과정이 필요
  • 게시물 CRUD 기능
    • 게시물 작성, 조회, 수정, 삭제 기능
      • 게시물 조회를 제외한 나머지 기능들은 전부 인가(Authorization) 개념이 적용되어야 하며 이는 JWT와 같은 토큰으로 검증
      • 내가 작성한 글을 남이 삭제할 수는 없어야 하고 오로지 본인만 삭제가능
    • 게시물 작성, 수정, 삭제 시 새로고침 기능
      • 프론트엔드에서 게시물 작성, 수정 및 삭제를 할 때마다 조회 API를 다시 호출하여 자연스럽게 최신의 게시물 내용을 화면에 보여줄 수 있도록 해야 함
  • 뉴스 피드 기능
    • 뉴스 피드 페이지
      • 사용자가 다른 사용자의 게시물을 한 눈에 볼 수 있는 뉴스 피드 페이지 필요

추가기능

  • 댓글 CRUD 기능

    • 댓글 작성, 조회, 수정, 삭제 기능
      • 사용자는 게시물에 댓글을 작성할 수 있고 본인의 댓글은 수정 및 삭제를 할 수 있어야 함
      • 또한, 게시물과 마찬가지로 댓글 조회를 제외한 나머지 기능들은 인가(Authorization)개념이 적용되어야 함
    • 댓글 작성, 수정, 삭제 시 새로고침 기능
      • 프론트엔드에서 댓글 작성, 수정 및 삭제를 할 때마다 조회 API를 다시 호출하여 자연스럽게 최신의 댓글 목록을 화면에 보여줄 수 있도록 해야 함
  • 이메일 가입 및 인증 기능

    • 이메일 가입 시 이메일 인증 기능을 포함
  • 좋아요 기능

    • 게시물 및 댓글 좋아요/좋아요 취소 기능
      • 사용자가 게시물이나 댓글에 좋아요를 남기거나 취소 가능
      • 이 때, 본인이 작성한 게시물과 댓글에 좋아요는 남길 수 없도록
  • 프론트엔드 만들어보기

    • 백엔드에서 제공하는 API를 통해 서버와 통신하는 프론트엔드를 구현
  • 소셜 로그인 기능 구현

  • 프로필에 사진 업로드 기능 구현

    • 프로필 사진을 저장할 때는 반드시 AWS S3를 이용
  • 게시물에 멀티미디어 지원 기능 구현

    • 게시물 본문에 사진이나 영상 등의 미디어를 포함
    • 또한, 게시물 수정시에도 첨부된 미디어가 수정
  • 팔로우 기능 구현

    • 특정 사용자를 팔로우/언팔로우
  • HTTP를 HTTPS로 업그레이드 하기
    - HTTPS를 적용하여 보안이 강화된 웹 페이지를 제공

    기능 명세



ERD

링크 : https://www.erdcloud.com/d/JLupHLbyw7Ys9tLgu

와이어프레임






profile
나다운사람

0개의 댓글