HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
🔥
팀 12 : 십이간지
/
EndPoint
EndPoint
EndPoint

EndPoint

메인 페이지 & 짤 디테일 페이지

 
GET getCustomizedImages()
로그인 한 유저는 누적된 액션을 바탕으로 산정된 추천 짤들을 홈 화면에서 볼 수 있다.
/api/v1
  • 조건 : 로그인 한 유저
request
X
response
  • 추천 짤 리스트

GET getRankImages()
로그인하지 않은 유저는 좋아요 많은 순의 짤 리스트를 홈 화면에서 볼 수 있다.
/api/v1
  • 조건 : 로그인 하지 않은 유저
request
X
response
  • 랭크 이미지 짤 리스트

POST searchTagImages()
 
유저는 상단 검색 바를 통해 찾고자 하는 짤의 태그를 검색할 수 있다.
/api/v1/search
request
  • 검색어(태그) (List,복수 검색어)
 
response
  • 검색어(태그)에 맞는 짤 리스트
 

 
GET getImageDetails()
짤의 상세 페이지를 볼 수 있다.
/api/v1/images/{id}
request
  • 짤 id
response
  • id에 맞는 짤의 상세 정보
 

 
POST likesImage() → 메인에서도 누를수 있고, 상세 페이지에서도 누를 수 있음
로그인 한 유저는 짤의 좋아요를 누를 수 있다.
/api/v1/images/{id}/like
  • 조건 : 로그인 한 유저
request
  • 짤 id
 
response
X
 

 
POST reportImage
로그인 한 유저는 짤의 좋아요를 누를 수 있다.
/api/v1/images/{id}/report
  • 조건 : 로그인 한 유저
request
  • 짤 id
 
response
X
 

 
POST downloadImage
로그인 한 유저는 짤의 다운로드 할 수 있다.
/api/v1/images/{id}/report
  • 조건 : 로그인 한 유저
request
  • 짤 id
 
response
X
 
 

헤더

구글 로그인
GET /oauth2/authorization/google
request
response

카카오 로그인
GET /oauth2/authorization/kakao
request
response

request
  • Id: 아이디
  • password: 비밀번호
  • email : 이메일 (비번 분실 시 사용)
response
  • Id
  • password
  • email
  • 성공 여부
네이버 로그인
GET /oauth2/authorization/naver
request
response
 


request
  • Id: 아이디
  • password: 비밀번호
  • email : 이메일 (비번 분실 시 사용)
response
  • Id
  • password
  • email
  • 성공 여부
로그아웃
POST /api/v1/user/logout
request
response
 

좋아요한 짤 조회
GET /api/v1/user/like
request
response
  • user nickname
  • 좋아요한 짤 리스트
  • 좋아요한 짤 개수
  • 내가 좋아요한 짤들의 태그 리스트

업로드한 짤 조회
GET /api/v1/user/my-upload
request
response
  • user nickname
  • 업로드한 짤 리스트
  • 업로드한 짤 개수
  • 내가 업로드한 짤들의 태그 리스트

request
  • Id: 아이디
response
  • 성공 여부
  • Id
  • password
  • email
짤 업로드 페이지 조회
GET /api/v1/user/upload
request
response
  • user nickname
  • 추천 태그 리스트

좋아요한 짤 페이지

내 태그 조회
GET/api/v1/user/like/tag
request
 
response
  • 좋아요한 짤의 태그 조회(가장 많이 포함한 순(상위 5개)

자동완성 검색
POST/api/v1/like/search
request
  • 검색어
response
  • 자동완성 검색 결과 리스트

request
  • Id: 아이디
response
  • 성공 여부
  • Id
  • password
  • email
좋아요한 짤 태그 필터링
POST /api/v1/user/like
request
  • 태그 Id 리스트
 
response
  • user nickname
  • 좋아요한 짤 중 태그에 맞는 짤 리스트

좋아요한 짤 로컬 저장
POST /api/v1/user/like/local
request
  • 로컬에 저장할 짤 id 리스트
response
  • 로컬에 저장된 짤 id 리스트
request
  • Id: 아이디
response
  • 성공 여부
  • Id
  • password
  • email

짤 업로드 페이지

request
  • accessToken
  • refreshToken
response
  • accessToken
  • refreshToken
  • refreshTokenExpiredDate
짤 업로드
POST /api/v1/user/upload
request
  • 짤
response
  • 성공 여부
  • 짤 정보(짤 + 태그)

짤 태그 지정
POST /api/v1/user/upload/{tagId}
request
  • 지정할 태그
response
  • 태그가 지정된 짤
  • 태그

request
  • Id: 아이디
response
  • 성공 여부
  • Id
  • password
  • email
request
  • accessToken
  • refreshToken
response
  • accessToken
  • refreshToken
  • refreshTokenExpiredDate
태그 생성
POST /api/v1/user/upload/tag
request
  • 태그
response
  • 생성된 태그

태그 검색
GET /api/v1/user/upload/tag
request
  • 검색어
response
  • 검색어에 맞는 태그 리스트

자동완성 검색
POST/api/v1/user/tag
request
  • 검색어
response
  • 자동완성 검색 결과 리스트

업로드한 짤 페이지


내 태그 조회
GET/api/v1/user/my-upload/tag
request
 
response
  • 사용자가 가지고 있는 이미지의 태그 조회(가장 많이 포함한 순(상위 5개)

자동완성 검색
POST/api/v1/user/tag
request
  • 검색어
response
  • 자동완성 검색 결과 리스트

업로드한 짤 태그 필터링
POST /api/v1/user/my-upload
request
  • 태그 id 리스트
 
response
  • 업로드한 짤 중 태그에 맞는 짤 리스트

업로드한 짤 삭제
DELETE /api/v1/user/my-upload
request
  • 삭제할 짤 아이디 리스트
response
  • 성공 여부

업로드한 짤 로컬 저장
POST /api/v1/user/my-upload/local
request
  • 로컬에 저장할 짤 id 리스트
response
  • 로컬에 저장된 짤 id 리스트
request
  • 삭제할 짤 아이디 리스트
response
  • 성공 여부

관리자 page

DELETE 신고 접수된 사진 삭제
/api/v1/report/{pictureId}
신고가 3번 누적된 사진에 대한 사진을 삭제합니다. * hard delete 사용 * 관리자 권한 여부 체크

랭킹

  • 권한 체크는 X
GET 채팅 사용 횟수 랭킹 조회 (오름차순)
/api/v1/ranking/chats
채팅 사용 횟수가 많은 사진 순서로 사진 리스트를 반환합니다.

채팅

우선 이건 기능 구현 하면서 조금 해야할 것 같아서.. 기능만 말해볼게요.
  • 개설되어있는 하나의 채팅방 id 반환
  • 채팅방 입장
  • 채팅방 퇴장
  • 메세지 보내기