-
Notifications
You must be signed in to change notification settings - Fork 4
무드캐처 REST API
황수민 edited this page Oct 3, 2022
·
12 revisions
| 웰컴메세지 | 회원가입 및 로그인 | 유저정보 | 게시물 | 아이템 | 댓글 | 대댓글 | 좋아요 | 알림 | 무드맵 |
|---|---|---|---|---|---|---|---|---|---|
| start | auth | users | posts | musinsa | comments | recomments | like | notice | map |
start
| Descriptions | Method | URI | FE | BE |
|---|---|---|---|---|
| 웰컴메세지 | GET | /api/start | 신수정 | 조권영 |
{
status : 200,
msg:”초기 화면 조회 성공”,
data: {
startMsg : “무드캐처에 오신 걸 환영합니다!”
}
}auth
| Descriptions | Method | URI | FE | BE |
|---|---|---|---|---|
| 회원가입 | POST | /api/auth/signup | 신수정 | 이수범 |
| 이메일 확인 | GET | /api/auth/checkEmail?email
|
신수정 | 이수범 |
| 인증번호 발송 | POST | /api/auth/sendEmail?type
|
신수정 | 이수범 |
| 인증번호 확인 | GET | /api/auth/check-authnum?email&authNum
|
신수정 | 이수범 |
| 로컬 로그인 | POST | /api/auth/login | 신수정 | 황수민 |
| 소셜 로그인 | GET | /api/auth/kakao | 신수정 | 조권영 |
| 닉네임 확인 | GET | /api/auth/checkNickname?nickname
|
신수정 | 이수범 |
| 닉네임/성별/나이 추가 | POST | /api/auth/detail | 신수정 | 이수범 |
| 비밀번호 변경 | PUT | /api/auth/updatePw?email&authNum
|
신수정 | 이수범 |
| 로그아웃 | DELETE | /api/auth/logout | 박준수 | 황수민 |
{
"email" : “test123@naver.com”,
"password" : “qwer123!”,
"confirmPw" : “qwer123!”,
"authNum" : “123456”
}{
status : 201,
msg : ”회원가입 성공”,
data : {}
}<req.query>
{
"email" : “abc@naver.com”
}{
status : 200,
msg : ”이메일 확인 성공”,
data : {}
}<req.query>
{
"type" : “signup” 또는 “password”
}
<req.body>
{
"email" : “abc123@naver.com”
}{
status : 200,
msg : ”인증번호 발송 성공”,
data : {}
}<req.query>
{
"email" : “abc123@naver.com”,
"authNum" : “123456”
}{
status : 200
msg: "인증번호 확인 성공",
data : {
result: true
}
},
{
status : 400
msg : "인증번호 확인 실패",
data : {
result: false
}
},{
"email" : “test123@naver.com”,
"password" : “1234abc!”
}{
status : 200,
"url" : "브라우저 주소/login/detail?exist=${exist}&token=${token}"
}- exist : 기존 회원이면 true, 신규 회원이면 false
- token : “xxx.yyy.zzz”
{
status : 200,
}- "브라우저 주소/login/detail?exist=${exist}&token=${token}"로 리다이렉트
- exist : 기존 회원이면 true, 신규 회원이면 false
- token : “xxx.yyy.zzz”
<req.query>
{
"nickname" : “테스트”,
}{
status : 200,
msg : ”닉네임 확인 성공”,
data : {}
}{
"nickname" : ”권영”,
"age" : “20대”,
"gender" : “남자”
}{
status : 200,
msg : ”닉네임, 성별, 나이 추가 성공”,
data : {}
}<req.query>
{
"email" : “abc123@naver.com”,
"authNum" : “123456”
}
<req.body>
{
"password" : “qwer123!” ,
"confirmPw" : “qwer123!”
}{
status : 200,
msg : ”비밀번호 변경 성공”,
data : {}
}{
status : 200,
msg : ”로그아웃 성공”,
data : {}
}users
| Descriptions | Method | URI | FE | BE |
|---|---|---|---|---|
| 유저정보 조회 | GET | /api/users/:userId
|
박준수 | 황수민 |
| 유저정보 수정 | PUT | /api/users?nickname&gender&age&original
|
신수정 | 황수민 |
| 프로필 아이콘 수정 | PATCH | /api/users | 신수정 | 황수민 |
| 회원탈퇴 | DELETE | /api/users/signout | 신수정 | 이수범 |
<req.params>
{
"userId" : 1
}{
status : 200,
msg : ”유저 정보 조회 성공”,
data : {
userStatus: {
userId : 99
nickname : “영수”,
imgUrl : “http://abc”,
grade : “man 1”,
gender : “남자”,
age : “10대”,
repPostId : 3,
isExistsNotice : true,
moodPoint : “200”
},
}
}<req.query>
{
"nickname" : “수수”,
"gender" : 남자,
"age" : 20대,
"original" : true //유저 사진 기본 이미지로 변경
}
<req.body>
{
userValue : FormData
}- req.query의 nickname, age, gender는 필수값이고 original은 선택사항
- req.query의 "original" : true 기재 시 req.body의 userValue는 기재X
{
status : 201,
msg : ”유저 정보 변경 성공”,
data : {}
}<req.body>
{profileIcon : “moody”} 또는
{profileIcon : “woman”} 또는
{profileIcon : “man”},{
status : 201,
msg : ”프로필 아이콘 변경 성공”,
data : {
userStatus: {
"grade" : “moody 1”,
},
}
}{
status : 200,
msg : ”유저 정보 삭제 성공”,
data :{}
}posts
| Descriptions | Method | URI | FE | BE |
|---|---|---|---|---|
| 게시물 작성 | POST | /api/posts | 박준수 | 조권영 |
| 이미지 업데이트 | PUT | /api/posts/:postId/image |
박준수 | 조권영 |
| 게시물 전체 조회 | GET | /api/posts/?userId&keyword&sort&type&gender&page&count&order
|
박준수,신수정 | 조권영 |
| 게시물 상세 조회 | GET | /api/posts/detail/:postId
|
박준수 | 황수민 |
| 게시물 수정 | PUT | /api/posts/:postId
|
박준수 | 조권영 |
| 게시물 삭제 | DELETE | /api/posts/:postId
|
박준수 | 조권영 |
| 대표 게시물 지정 | PATCH | /api/posts/:postId
|
박준수 | 조권영 |
| 대표 게시물 조회 | GET | /api/posts/rep?userId
|
박준수 | 황수민 |
| 인기 게시물 조회 | GET | /api/posts/popular | 박준수 | 황수민 |
| 명예의 전당 조회 | GET | /api/posts/honor?page&count
|
신수정 | 황수민 |