Skip to content

99-6W-6/JJal_backend

Repository files navigation

JJal

짤 업로드해 공유하는 공간

저희의 서비스가 궁금하시다면

유튜브주소~~~~~~~~~~~~~~~~~~~~~~~~~~

도메인주소~~~~~~~~~~~~~~~~~~~~~~~~~~

🧑🏻‍💻 제작 기간 및 팀원 소개

기간 : 2021년 12월 6일 ~ 2021년 12월 11일

Backend(Node.js)

  • 한동훈 : login + signup
  • 정하나 : post + main + myPage
  • 김다희 : comment + like

Frontend(React)

  • 임찬수
  • 이주형

🛠 사용 기술

Languages

JavaScript

Frameworks, Platforms and Libraries

NodeJS JWT

IDEs/Editors

Visual Studio Code

Version Control

GitHub

Hosting/SaaS

AWS

Databases

MongoDB

Other

Notion Postman

🎢 API 설계

user

  • Post /api/users/auth
  • Post /api/users/users
  • Post Ip/api/users/checkId

post

  • Post /api/posts/lists
  • Post /api/posts
  • Post /api/posts/details
  • Post /api/posts/search/tag
  • Post /api/posts/uploadfile
  • Delete /api/posts

comment

  • Post /api/comment/
  • Put /api/comment/detail
  • Delete /api/comment/detail
  • Post /api/comment/detail

like

  • Post /api/like/likes
  • Post /api/like/likes

myPage

  • Post /api/users/likeImg
  • Post /api/users/myPostImgs

📜 핵심기능

로그인/회원가입

  • JWT를 이용하여 로그인과 회원가입 구현
  • 아이디가 3글자 이상, 숫자, 영문자 소/대문자로만 구성
  • 비밀번호가 4글자 이상, 숫자, 영문자 소/대문자로만 구성
  • 비밀번호에 아이디가 포함되면 회원가입 불가능
  • 닉네임을 이미 사용중이면 회원 가입 불가능

게시글 작성하기 CRD

  • 이미지와 태그 포스팅가능
  • 다른 유저의 게시글 조회 가능
  • 유저 본인의 게시글은 삭제가능하며, 다른 유저의 리뷰글은 수정 불가능

댓글 작성하기 CRUD

  • 유저 본인의 생각을 담아 작성 가능
  • 다른 유저의 댓글 조회 가능
  • 유저 본인의 댓글을 수정가능하며, 다른 유저의 리뷰글은 수정 불가능
  • 유저 본인의 댓글을 삭제가능하며, 다른 유저의 리뷰글은 수정 불가능

🤦🏻 프로젝트 중 힘들었던 점이 있다면

  • DB형식을 통일하지 않고 각자 편한대로 만들었다가 ObjectId를 String으로 변환해야 하는데 꼬이는 일이 발생하여 TypeError, CastError 발생
  • 갈수록 멍청해지는 내 머리...
  • API명세를 통일성 있게 작성하고 최대한 수정이 없을 수 있게 정하는게 프론트엔드 팀원이 작업하기 편햬을텐데 죄송했다.

💯 해결한 문제

  1. res.locals 값으로 받으려 하였는데 undefined 발생 > req.body로 받아옴
  2. 서버 배포시 invalid ELF header 에러메세지 > node_modules파일을 안올리고 서버에서 npm install

🍻 개인 회고

한동훈

About

항해99 6주차 프로젝트

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published