-
Notifications
You must be signed in to change notification settings - Fork 1
API 명세서
Seungjae Lee edited this page Nov 15, 2022
·
15 revisions
https://www.notion.so/API-369d507bcd0c46298f18298975ea30fa
이름 | API_URL | Method | Request | Response | Status |
로그인 및 회원가입 | /auth/login | GET | {
"message": "로그인 성공"
} |
200 | |
로그아웃 | /auth/logout | POST | {
"user_id": 1,
} |
{
"message": "로그아웃 성공"
} |
201 |
친구 등록 | /friend | POST | {
"my_email": "[email protected]"
"friend_email": "[email protected]"
} |
{
"message": "친구 등록 성공"
} |
201 |
친구 삭제 | /friend | DELETE | {
"my_email": "[email protected]"
"friend_email": "[email protected]"
} |
{
"message": "친구 삭제 성공"
} |
204 |
유저 정보 조회 | /user/:id | GET | {
"user_id": 1,
"email": "mailto:[email protected]",
"nickname": "japari",
"score": 2000,
"profile_image": "public/profile/default.jpg"
} |
200 | |
유저 정보 변경 | /user/:id | PUT | {
"user_id": 1,
"email": "mailto:[email protected]",
"nickname": "japari",
"score": 2000,
"profile_image": "public/profile/default.jpg"
} |
{
"message": "유저 정보 변경 성공"
} |
201 |
유저 정보 삭제 | /user/:id | DELETE | { "user_id": 1 } |
{
"message": "유저 삭제 성공"
} |
204 |
유저 목록 조회(친구, 랭킹) | /user/list | GET | {
"friend": [
{
"user_id": 1,
"email": "[email protected]",
"nickname": "japari",
"score": 2000,
"profile_image": "public/profile/1.jpg"
},
...
],
"ranking": [
{
"user_id": 32,
"email": "[email protected]",
"nickname": "monster",
"score": 32000,
"profile_image": "public/profile/2.jpg"
},
...
]
} |
200 | |
게임 정보 목록 조회 | /game | GET | [
{
"game_id": 1,
"name": "CatchMind",
"minimum_people": 2
},
...
] |
200 |
이름 | 이벤트 이름 | 데이터 | 송수신자 | 대상 |
로비페이지 채팅 보내기 | chat_lobby | {
"sender": "nickname",
"message": "안녕",
"send_time": "2022-11-14 16:40"
} |
클라이언트 → 서버 | |
로비페이지 채팅 받기 | chat_lobby | {
"sender": "nickname",
"message": "안녕",
"send_time": "2022-11-14 16:40"
} |
서버 → 클라이언트 | 로비 페이지에 있는 모든 유저 |
대기방 / 인게임 채팅 보내기 | chat_in_game | {
"sender": "nickname",
"message": "안녕",
"send_time": "2022-11-14 16:40"
} |
클라이언트 → 서버 | |
대기방 / 인게임 채팅 받기 | chat_in_game | {
"sender": "nickname",
"message": "안녕",
"send_time": "2022-11-14 16:40"
} |
서버 → 클라이언트 | 대기방 인원 |
[Interval] 접속 유저 목록 불러오기 | get_online_user | {
"users": {
"user_id": {
"email": "email",
"nickname": "nickname",
"socket_id": "9aef2340f"
},
"user_id2": {
"email": "email",
"nickname": "nickname",
"socket_id": "1234asdf"
},
}
} |
서버 → 클라이언트 | 접속 중인 모든 유저 |
친구 추가 보내기 | request_friend | {
"sender": 1,
"receiver": 2
} |
클라이언트 → 서버 | |
친구 추가 받기 | request_friend | {
"sender": 1,
"receiver": 2
} |
서버 → 클라이언트 | 친구 추가를 받은 유저 |
[Interval] 게임 방 목록 불러오기 | get_game | {
"rooms": [
"game_room_id": {
"title": "초보만",
"game_id": 1,
"current_people": 2,
"maximum_people": 8,
"private": false,
},
"game_room_id2": {
"title": "고수만",
"game_id": 2,
"current_people": 3,
"maximum_people": 8,
"private": true,
},
]
} |
서버 → 클라이언트 | 로비 페이지에 있는 모든 유저 |
게임 방 참가 | join_game | {
"game_room_id": 1,
"password": "암호화_된_비밀번호",
"user_id": 2
} |
클라이언트 → 서버 | |
게임 방 나가기 | exit_game | {
"game_room_id": 1,
"user_id": 2
} |
클라이언트 → 서버 | |
게임 방 생성 | create_game | {
"title": "초보만",
"game_id": 1,
"maximum_people": 8,
"private": true,
"password": "1q2w3e4r",
} |
클라이언트 → 서버 | |
게임 방 설정 변경 | setting_game | {
"title": "초보만",
"game_id": 1,
"maximum_people": 8,
"private": true,
"password": "1q2w3e4r",
} |
클라이언트 → 서버 | |
게임 방 설정 및 참가자 정보 불러오기 | get_game_info | {
"title": "초보만",
"game_room_id": 1,
"game_id": 1,
"minimum_people": 2,
"maximum_people": 8,
"participants": ["user1", "user2", "user3", "user4"],
"private": true
} |
서버 → 클라이언트 | - 처음 입장할 때 - 설정 변경이 일어날 경우 - 대기방에 누가 들어오거나 나갈 경우 |
게임 초대 보내기 | invite_game | {
"game_room_id": 1,
"sender": "sender_nickname",
"receiver": "receiver_id",
} |
클라이언트 → 서버 | |
게임 초대 받기 | invite_game | {
"game_room_id": 1,
"receiver": "receiver_id"
} |
서버 → 클라이언트 | 게임 초대를 받은 유저 |
미디어 준비 완료 | media_ready | 클라이언트 → 서버 | ||
미디어 준비 완료 | media_ready | 서버 → 클라이언트 | 게임방에 들어와 미디어 준비가 완료된 유저 | |
피어 연결 offer 보내기 | offer | 클라이언트 → 서버 | ||
피어 연결 offer 받기 | offer | 서버 → 클라이언트 | offer를 받은 유저 (나중에 입장한 유저) | |
피어 연결 answer 보내기 | answer | 클라이언트 → 서버 | ||
피어 연결 answer 받기 | answer | 서버 → 클라이언트 | answer를 받은 유저 (먼저 입장한 유저) | |
피어 연결 icecandidate 보내기 | icecandidate | 클라이언트 → 서버 | ||
피어 연결 icecandidate 받기 | icecandidate | 서버 → 클라이언트 | icecandidate를 받은 유저 |
- 22.11.01 멘토님 미팅
- 22.11.09 멘토님 미팅
- 22.11.17 멘토님 미팅
- 22.11.23 멘토님 미팅
- 22.12.01 멘토님 미팅
- 22.12.08 멘토님 미팅
- 22.12.15 멘토님 미팅