[KR] 시작하기 - 2022-dimipay-recruit/Flutter-Server GitHub Wiki
환영합니다!
2022 디미페이 채용 퍼포먼스 테스트 플러터조 서버 Repository입니다.
이 위키는 플러터조 서버 API에 접근하기 위한 방법을 설명하고 있습니다.
서버는 JWT기반 토큰을 중심으로 인증하여 작동하기에 서버 인증 플로우에 관한 서술을 추가할 예정입니다.
자세한 API명세는 오른쪽의 메뉴를 참고하여 확인해주세요.
API 요청 방법
API 서버는, develop 브랜치를 기준으로 커밋될 때마다 서버에 자동으로 적용됩니다. 서버는 다음과 같은 도메인을 통해 접근할 수 있습니다.
https://dprc.tilto.kr/
이하의 모든 명세에서는, 절대 경로를 도메인 생략 후 서술합니다.
예로, https://dprc.tilto.kr/v1/user/login
의 명세라면 /v1/user/login
과 같이 표시합니다.
또한, 실사용하는 라우터에 한해서는 JSEND 표준을 준수하며, 응답 타입은 대체로 다음과 같습니다.
성공시:
{
status: 'success',
data: null | object | object[]
}
실패시 (요청 에러):
{
status: 'fail',
data: {
message: string
}
}
API 요청 테스트
이 서버에서는, 서버의 연결을 확인하기 위한 GET과 POST메소드에 매칭되는 ReturnRouter를 갖고 있습니다. 아래의 형식에 맞춰, 요청을 보내보세요!
/return
GET GET https://dprc.tilto.kr/return?testquery=test
query :
자유 (타입도 자유!) - 아무값이나 보내세요. 다 받아줍니다.
response :
알 수 없음 (타입도?) - 요청이 제대로 들어왔다면, 보낸 값을 그대로 돌려줍니다.
/return
POST POST https://dprc.tilto.kr/return
body: {
testquery: test
}
body :
자유 (타입도 자유!) - 아무값이나 보내세요. 다 받아줍니다.
response :
알 수 없음 (타입도?) - 요청이 제대로 들어왔다면, 보낸 값을 그대로 돌려줍니다.
인증
/auth/login
POST request:
- body (googleUid나 kakaoUid 둘중 하나는 있어야 함)
- googleUid?: string (/^[a-zA-Z0-9]+$/)
- kakaoUid?: string (/^kakao:[0-9]+$/)
response :
{
status: 'success',
data: {
type: 'Bearer',
refreshToken: string (JWT),
accessToken: string (JWT, 7일 후 만기),
userId: string (UUID)
}
}
error:
- 400
- Lack of user information
- Invalid user information
/auth/token
POST request:
- body
- refreshToken: string (Bearer + JWT)
response:
{
status: 'success',
data: {
type: 'Bearer',
accessToken: string (JWT, 7일 후 만기),
userId: string (UUID)
}
}
error:
- 400
- Invalid authorization token
- Invalid authorization header type
- 401
- Invalid authorization token
/auth/logout
POST request:
- header
- authorization: string (Bearer + JWT)
response:
{
status: 'success',
data: null
}
error:
- 400
- Invalid authorization token
- Invalid authorization header type