generated from osamhack2020/Sample_Technology_ProjectName_TeamName
-
Notifications
You must be signed in to change notification settings - Fork 3
API Guide
Hyeonjae.kim edited this page Oct 31, 2020
·
2 revisions
신규 유저를 등록합니다.
[Request]
POST /api/users/register
{
"body" : {
"user_id" : (유저 아이디),
"user_email" : (유저 이메일),
"user_pw" : (유저 패스워드)
}
}
body로 user_id
, user_email
, user_pw
를 보냄
[Response]
- 회원가입 성공
HTTP 200
{
success : true,
message : '회원가입에 성공했습니다.'
}
- 이미 존재하는 아이디인 경우
HTTP 400
{
success : false,
message : '이미 존재한 아이디입니다.'
}
로그인합니다.
[Request]
POST /api/users/login
{
"body" : {
"user_id" : (유저 아이디),
"user_pw" : (유저 패스워드)
}
}
body로 user_id
, user_pw
를 보냄
[Response]
- 로그인에 성공한 경우
유저의 마지막 접속일을 업데이트합니다.
user_updatedAt: new Date().toISOString()
HTTP 200
{
success : true,
message : `${user.user_id} : 로그인 성공`
}
- 이메일은 맞지만 비밀번호가 잘못된 경우
HTTP 200
{
success : false,
message : `비밀번호가 틀림`
}
- 이메일도 비밀번호도 잘못된 경우
HTTP 200
{
success : false,
message : `아이디도 비밀번호도 틀림`
}
유저의 기본 정보를 불러옵니다.
[Request]
GET /api/users
{
"query" : {
"user_id" : (유저 아이디)
}
}
query로 user_id
를 보냄
[Response]
- 유저가 존재할 경우
HTTP 200
{
success : true,
data : result(MongoDB user data),
message : `${user_id} 의 정보`
}
- 유저가 없는 경우
HTTP 404
{
success : false,
message : `${user_id}는 없는 유저입니다.`
}
유저의 계정을 삭제합니다.
[Request]
POST /api/users/delete
{
"body" : {
"user_id" : (유저 아이디),
"user_pw" : (유저 비밀번호)
}
}
body로 user_id
, user_pw
를 보냄
[Response]
- 아이디가 존재하며, 현재 비밀번호가 일치하는 경우
HTTP 200
{
success : true,
message : `${user_id} : 회원탈퇴`
}
- 아이디가 존재하며, 현재 비밀번호와 다른 경우
HTTP 200
{
success : false,
message : `${user_id} 의 비밀번호가 틀립니다.`
}
유저의 비밀번호를 변경합니다.
[Request]
PATCH /api/users/password
{
"body" : {
"user_id" : (유저 아이디),
"user_prev_pw" : (현재 비밀번호),
"user_want_pw" : (변경할 비밀번호)
}
}
body로 user_id, user_prev_pw, user_want_pw 를 보냄
[Response]
- 아이디가 존재하며 현재 비밀번호가 일치하는 경우(정상 요청)
HTTP 200
{
success : true,
message : `${user_id}의 비밀번호가 변경되었습니다.`
}
- 아이디가 없거나, 현재 비밀번호가 틀린 경우(비정상 요청)
HTTP 400
{
success : false,
message : `아이디 혹은 비밀번호가 틀렸습니다.`
}
유저의 비밀번호를 변경합니다.
[Request]
PUT /api/users/password
{
"body" : {
"user_id" : (유저 아이디),
"user_email" : (유저 이메일),
"user_want_pw" : (변경할 비밀번호)
}
}
body로 user_id
, user_prev_pw
, user_want_pw
를 보냄
[Response]
- 비밀번호 변경이 가능한 경우(정상 요청)
TODO: 이메일을 통한 인증 기능
HTTP 200
{
success : true,
message : `${user_id}의 비밀번호가 변경되었습니다.`
}
- 비밀번호 변경이 실패한 경우
HTTP 400
{
success : false
}