Skip to content
HYE_JI edited this page Jun 16, 2019 · 1 revision

회원가입


메소드 경로 설명
POST student/auth/signUp 사용자 회원가입

  • 요청 바디

    {
        "name" : "name",
        "username" : "username",
        "password" : "password",
        "email" : "eamil@sample.com"
    }
    필드이름 설명
    name 사용자 이름
    username 사용자 ID
    password 시용자 비밀번호
    email 사용자 이메일

  • 응답 바디

    • 회원가입 성공

      {
          "code": 201,
          "status": "Created",
          "message": "학생 생성 성공",
          "data": null
      }
    • 이미 등록된 ID

      {
          "timestamp": "yyyy-MM-dd'T'HH:mm:ss.SSSZ",
          "status": 409,
          "error": "Conflict",
          "message": "{username} 은 이미 등록된 아이디입니다.",
          "path": "/student/auth/signUp"
      }
    • 비밀번호 강도가 약한 경우

      {
          "timestamp": "yyyy-MM-dd'T'HH:mm:ss.SSSZ",
          "status": 412,
          "error": "Precondition Failed",
          "message": "비밀번호 강도가 약합니다.",
          "path": "/student/auth/signUp"
      }
      
    • 이미 등록된 email

      {
          "timestamp": "yyyy-MM-dd'T'HH:mm:ss.SSSZ",
          "status": 409,
          "error": "Conflict",
          "message": "{email} 은 이미 등록된 이메일입니다.",
          "path": "/student/auth/signUp"
      }

로그인


메소드 경로 설명
POST student/auth/login 사용자 로그인

  • 요청 바디

    {
    	"username" : "test1",
    	"password" : "test12345"
    }
    필드이름 설명
    username 사용자 ID
    password 사용자 비밀번호

  • 응답 바디

    • 로그인 성공

      {
          "code": 201,
          "status": "Created",
          "message": "로그인 성공",
          "data": {
              "token": "token value",
              "refreshToken": "refreshToken value"
          }
      }
    • 등록된 아이디가 아닌 경우

      {
          "timestamp": "yyyy-MM-dd'T'HH:mm:ss.SSSZ",
          "status": 404,
          "error": "Not Found",
          "message": "{username}에 해당하는 유저가 없습니다.",
          "path": "/student/auth/login"
      }
    • 비밀번호가 일치하지 않는 경우

      {
          "timestamp": "yyyy-MM-dd'T'HH:mm:ss.SSSZ",
          "status": 401,
          "error": "Unauthorized",
          "message": "비밀번호가 다릅니다.",
          "path": "/student/auth/login"
      }

토큰 재발급


메소드 경로 설명
POST student/auth/token 토큰 재발급

  • 요청 바디

    {
    	"refreshToken" : "refreshToken value"
    }
    필드이름 설명
    refreshToken 로그인 시 발급받은 refresh token

  • 응답 바디

    • 토큰 재발급 성공

      {
          "code": 201,
          "status": "Created",
          "message": "토큰 재발급 완료",
          "data": {
              "token": "token value"
          }
      }
      
    • refresh token이 아닌 다른 token을 요청 바디에 넣은 경우

      {
          "timestamp": "yyyy-MM-dd'T'HH:mm:ss.SSSZ",
          "status": 400,
          "error": "Bad Request",
          "message": "리프레시 토큰이 아닙니다.",
          "path": "/student/auth/token"
      }
      
    • refresh token이 변형된 경우

      {
          "timestamp": "yyyy-MM-dd'T'HH:mm:ss.SSSZ",
          "status": 400,
          "error": "Bad Request",
          "message": "INVALID",
          "path": "/student/auth/token"
      }
      
    • refresh token이 만료된 경우

      {
          "timestamp": "yyyy-MM-dd'T'HH:mm:ss.SSSZ",
          "status": 400,
          "error": "Bad Request",
          "message": "EXPIRED",
          "path": "/student/auth/token"
      }
      

Clone this wiki locally