Skip to content
songz1 edited this page Jan 11, 2019 · 34 revisions

User

회원 가입

메소드 경로 설명
POST /users 회원 가입

요청헤더

Content-Type : application/json

요청 바디

{
    "userName": "sujung",
    "userId": "tnwjddl",
    "userPw": "rnrn45",
    "userPhone": "01012345678",
    "birthday": "1995-01-01T00:00",
    "fcmToken": "tttttooookkkkkkeeeeeennnnnn",
    "sexType": 0
}       
Parameters
필드 타입 필수여부 설명
userName String Required 이름
userId String Required 아이디
userPw Stirng Required 비밀번호
userPhone String Required 연락처
birthday LocalDatetime Required 생일
sexType Int Required 여자 0 / 남자 1

응답 바디

회원 가입 성공

{
    "status": 201,
    "message": "회원 가입 성공",
    "data": {
        "user": {
            "userIdx": 3,
            "userId": "tnwjddl",
            "userName": "sujung",
            "userPhone": "01012345678",
            "birthday": "1995-01-01T00:00:00",
            "sexType": 0,
            "statusMessage": "상태메세지를 등록하세요.",
            "profilePhoto": null,
            "backPhoto": null,
            "groupIdx": -1
        },
        "token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJGQU1GQU0iLCJ1c2VyX2lkeCI6MywiZXhwIjoxNTQ3NjExMjA3fQ.oQk0csWF8ODnR2QF2hAyOdpQ4jvP5EvtMuCEfDKrHC0"
    }
}

아이디 중복

{
    "status": 400,
    "message": "아이디 중복",
    "data": null
}

DB 에러

{
    "status": 600,
    "message": "데이터베이스 에러",
    "data": null
}

INTERNAL SERVER ERROR

{
    "status": 500,
    "message": "서버 내부 에러",
    "data": null
}

아이디 중복 체크

메소드 경로 설명
POST /users/id 아이디 중복 체크

요청헤더

Content-Type : application/json

요청 바디

{
    "userId": "tnwjddl"
}
Parameters
필드 타입 필수여부 설명
userId String Required 아이디

응답 바디

아이디 중복 확인 성공(사용가능)

{
    "status": 200,
    "message": "사용할 수 있는 아이디입니다.",
    "data": null
}

아이디 중복 확인 실패(사용불가)

{
    "status": 204,
    "message": "아이디 중복",
    "data": null
}

DB 에러

{
    "status": 600,
    "message": "데이터베이스 에러",
    "data": null
}

INTERNAL SERVER ERROR

{
    "status": 500,
    "message": "서버 내부 에러",
    "data": null
}

로그인

메소드 경로 설명
POST /login 로그인

요청헤더

Content-Type : application/json

요청 바디

{
    "userId": "tnwjddl",
    "userPw": "rnrn45"
}
Parameters
필드 타입 필수여부 설명
userId String Required 아이디
userPw String Required 비밀번호

응답 바디

로그인 성공

{
    "status": 200,
    "message": "로그인 성공",
    "data": {
        "user": {
            "userId": "tnwjddl",
            "userName": "sujung",
            "userPhone": "01012345678",
    	    "birthday": "1995-01-01T00:00",
            "sexType": 0,
            "statusMessage": "상태메세지를 등록하세요.",
            "profilePhoto": null,
            "backPhoto": null,
            "groupIdx": 2
        },
        "token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJGQU1GQU0iLCJ1c2VyX2lkeCI6MX0.Xtx9V21WOrpU6N4uwyRxEaCXPGJYPYgDPa3Agt2250E"
    }
}

아이디/비밀번호 불일치

{
    "status": 401,
    "message": "로그인 실패",
    "data":null
}

요청바디 에러

{
    "status": 400,
    "message": "NULL 에러",
    "data":null
}

DB 에러

{
    "status": 600,
    "message": "데이터베이스 에러",
    "data": null
}

INTERNAL SERVER ERROR

{
    "status": 500,
    "message": "서버 내부 에러",
    "data": null
}

자동 로그인

메소드 경로 설명
GET /login 자동 로그인

요청헤더

Authorization: token

응답 바디

로그인 성공

{
    "status": 200,
    "message": "로그인 성공",
    "data": {
        "user": {
            "userId": "tnwjddl",
            "userName": "sujung",
            "userPhone": "01012345678",
    	    "birthday": "1995-01-01T00:00",
            "sexType": 0,
            "statusMessage": "상태메세지를 등록하세요.",
            "profilePhoto": null,
            "backPhoto": null,
            "groupIdx": 2
        },
        "token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJGQU1GQU0iLCJ1c2VyX2lkeCI6MX0.Xtx9V21WOrpU6N4uwyRxEaCXPGJYPYgDPa3Agt2250E"
    }
}

인증 실패

{
    "status": 401,
    "message": "인증 실패",
    "data":null
}

유효하지 않은 회원의 접근

{
    "status": 404,
    "message": "회원을 찾을 수 없습니다.",
    "data":null
}

DB 에러

{
    "status": 600,
    "message": "데이터베이스 에러",
    "data": null
}

INTERNAL SERVER ERROR

{
    "status": 500,
    "message": "서버 내부 에러",
    "data": null
}

회원 조회

메소드 경로 설명
GET /users 회원 정보 조회(자신)

요청헤더

Authorization: token

응답 바디

회원 조회 성공

{
    "status":200,
    "message": "회원 정보 조회 성공",
    "data":{
        "userId": "tnwjddl",
        "userName": "sujung",
        "userPhone": "01012345678",
    	"birthday": "1995-01-01T00:00",
        "sexType": 0,
        "statusMessage": null,
        "profilePhoto": null,
        "backPhoto": null,
        "groupIdx": 2
    }
}

유효하지 않은 회원의 접근

{
    "status": 404,
    "message": "회원을 찾을 수 없습니다.",
    "data": null
}

DB 에러

{
    "status": 600,
    "message": "데이터베이스 에러",
    "data": null
}

INTERNAL SERVER ERROR

{
    "status": 500,
    "message": "서버 내부 에러",
    "data": null
}

그룹 회원 조회

메소드 경로 설명
GET /users/groups 그룹 회원 정보 조회

요청헤더

Authorization: token

응답 바디

그룹 회원 조회 성공

{
    "status": 200,
    "message": "그룹 회원 조회 성공",
    "data": {
        "users": [
            {
                "userIdx": 1,
                "userId": "1",
                "userName": "1",
                "userPhone": "01022222222",
                "birthday": "2018-12-20T00:00:00",
                "sexType": 2,
                "statusMessage": "상태메세지를 등록하세요.",
                "profilePhoto": "https://s3.ap-northeast-2.amazonaws.com/testfamfam/default/profile.png",
                "backPhoto": "https://s3.ap-northeast-2.amazonaws.com/testfamfam/default/back.png",
                "groupIdx": 2
            },
            {
                "userIdx": 2,
                "userId": "10",
                "userName": "10",
                "userPhone": "01033333333",
                "birthday": "2018-12-20T00:00:00",
                "sexType": 1,
                "statusMessage": "상태메세지를 등록하세요.",
                "profilePhoto": null,
                "backPhoto": null,
                "groupIdx": 2
            }
        ]
    }
}

그룹이 존재하지 않음

{
    "status": 404,
    "message": "그룹을 찾을 수 없습니다.",
    "data": null
}

유효하지 않은 회원의 접근

{
    "status": 404,
    "message": "회원을 찾을 수 없습니다.",
    "data": null
}

DB 에러

{
    "status": 600,
    "message": "데이터베이스 에러",
    "data": null
}

INTERNAL SERVER ERROR

{
    "status": 500,
    "message": "서버 내부 에러",
    "data": null
}

회원 정보 수정

메소드 경로 설명
PUT /users 회원 정보 수정

요청헤더

Authorization: token
Content-Type : application/json

요청 바디

  • 요청하지 않은 값은 자동으로 이전 값으로 반영
{
    "userName": "Kangsujung",
    "birthday": "1995-05-01T00:00",
    "sexType": 0,
    "statusMessage": "Hi"  
}
Parameters
필드 타입 필수여부 설명
userName String Optional 새로운 이름
birthday LocalDatetime Optional 새로운 생일
sexType Int Optional 여자 0 / 남자 1
statusMessage String Optional 새로운 상태메세지

응답 바디

회원 정보 수정 성공

{
    "status": 200,
    "message": "회원 정보 수정 성공",
    "data": null
}

유효하지 않은 회원의 접근

{
    "status": 404,
    "message": "회원을 찾을 수 없습니다.",
    "data": null
}

기념일 존재하지 않음 (그룹 존재하지 않음)

{
    "status": 404,
    "message": "기념일을 찾을 수 없습니다.",
    "data": null
}

DB에러

{
    "status": 600,
    "message": "데이터베이스 에러",
    "data": null
}

INTERNAL SERVER ERROR

{
    "status": 500,
    "message": "서버 내부 에러",
    "data": null
}

회원 사진 정보 수정

메소드 경로 설명
PUT /users/photo 회원 정보 수정

요청헤더

Authorization: token
Content-type: multipart/form

요청 바디

  • 요청하지 않은 값은 자동으로 이전 값으로 반영
{
    "profilePhoto": file,
	"backPhoto": file  
}
Parameters
필드 타입 필수여부 설명
profilePhoto File Optional 새로운 프로필 사진
backPhoto File Optional 새로운 배경 사진

응답 바디

회원 사진 정보 수정 성공

{
    "status": 200,
    "message": "회원 정보 수정 성공",
    "data": null
}

유효하지 않은 회원의 접근

{
    "status": 404,
    "message": "회원을 찾을 수 없습니다.",
    "data": null
}

DB에러

{
    "status": 600,
    "message": "데이터베이스 에러",
    "data": null
}

INTERNAL SERVER ERROR

{
    "status": 500,
    "message": "서버 내부 에러",
    "data": null
}

비밀번호 확인

메소드 경로 설명
POST /users/password 비밀번호 확인(회원정보 수정 전 재확인)

요청헤더

Authorization: token
Content-Type : application/json

요청 바디

{
    "userPw": "rnrn45"
}
Parameters
필드 타입 필수여부 설명
userPw String Required 비밀번호

응답 바디

비밀번호 일치

{
    "status": 200,
    "message": "비밀번호가 일치 합니다.",
    "data": null
}

비밀번호 불일치

{
    "status": 401,
    "message": "비밀번호가 틀렸습니다.",
    "data": null
}

유효하지 않은 회원의 접근

{
    "status": 404,
    "message": "회원을 찾을 수 없습니다.",
    "data": null
}

DB에러

{
    "status": 600,
    "message": "데이터베이스 에러",
    "data": null
}

INTERNAL SERVER ERROR

{
    "status": 500,
    "message": "서버 내부 에러",
    "data": null
}

비밀번호 수정 (로그인 O)

메소드 경로 설명
PUT /users/password 비밀번호 수정 (로그인 O)

요청헤더

Content-type: application/json
Authorization: token

요청 바디

{
    "userPw": "rkdrkd12"
}
Parameters
필드 타입 필수여부 설명
userPw String Required 새로운 비밀번호

응답 바디

비밀번호 수정 성공

{
    "status": 200,
    "message": "비밀번호 수정 성공",
    "data": null
}

유효하지 않은 회원의 접근

{
    "status": 404,
    "message": "회원을 찾을 수 없습니다.",
    "data": null
}

DB에러

{
    "status": 600,
    "message": "데이터베이스 에러",
    "data": null
}

INTERNAL SERVER ERROR

{
    "status": 500,
    "message": "서버 내부 에러",
    "data": null
}

아이디 찾기

메소드 경로 설명
POST /users/id/forget 아이디 찾기

요청헤더

Content-Type : application/json

요청 바디

{
    "number": "01012345678",
    "birthday": "1995-01-01T00:00"
} 
Parameters
필드 타입 필수여부 설명
number String Required 전화번호
birthday String Required 생일

응답 바디

아이디 찾기 성공

{
    "status": 200,
    "message": "회원 정보 조회 성공",
    "data": {
        "userId": "tnwjddl"
    }
}

아이디 찾기 실패

{
    "status": 404,
    "message": "회원을 찾을 수 없습니다.",
    "data": null
}

DB에러

{
    "status": 600,
    "message": "데이터베이스 에러",
    "data": null
}

INTERNAL SERVER ERROR

{
    "status": 500,
    "message": "서버 내부 에러",
    "data": null
}

비밀번호 찾기

메소드 경로 설명
POST /users/password/forget 비밀번호 찾기

요청헤더

Content-Type : application/json

요청 바디

{
    "userId": "tnwjddl",
    "number": "01012345678"
} 
Parameters
필드 타입 필수여부 설명
userId String Required 회원 아이디
number String Required 전화번호

응답 바디

비밀번호 찾기 성공

{
    "status": 200,
    "message": "회원 정보 조회 성공",
    "data": {
        "userIdx": 3
    }
}

비밀번호 찾기 실패

{
    "status": 404,
    "message": "회원을 찾을 수 없습니다.",
    "data": null
}

DB에러

{
    "status": 600,
    "message": "데이터베이스 에러",
    "data": null
}

INTERNAL SERVER ERROR

{
    "status": 500,
    "message": "서버 내부 에러",
    "data": null
}

비밀번호 수정 (로그인 X)

메소드 경로 설명
PUT /users/password/{userIdx} 비밀번호 수정 (로그인 X)
Parameters
필드 타입 필수여부 설명
userIdx Int Required 회원 고유 번호

요청헤더

Content-Type : application/json

요청 바디

{
    "userPw": "123"
} 
Parameters
필드 타입 필수여부 설명
userPw String Required 수정 비밀번호

응답 바디

비밀번호 수정 성공

{
    "status": 200,
    "message": "비밀번호 수정 성공",
    "data": null
}

유효하지 않은 회원의 접근

{
    "status": 404,
    "message": "회원을 찾을 수 없습니다.",
    "data": null
}

DB에러

{
    "status": 600,
    "message": "데이터베이스 에러",
    "data": null
}

INTERNAL SERVER ERROR

{
    "status": 500,
    "message": "서버 내부 에러",
    "data": null
}

회원 탈퇴

메소드 경로 설명
DELETE /users 회원 탈퇴

요청헤더

Authorization: token

응답 바디

회원 탈퇴 성공

{
    "status": 200,
    "message": "회원 탈퇴 성공",
    "data": null
}

유효하지 않은 회원의 접근

{
    "status": 404,
    "message": "회원을 찾을 수 없습니다.",
    "data": null
}

인증 실패

{
    "status": 401,
    "message": "인증 실패",
    "data": null
}

DB에러

{
    "status": 600,
    "message": "데이터베이스 에러",
    "data": null
}

INTERNAL SERVER ERROR

{
    "status": 500,
    "message": "서버 내부 에러",
    "data": null
}
Clone this wiki locally