Profile API 문서 - PartyGwam/api GitHub Wiki
기능 : 프로필 조회, 프로필 상세 조회, 프로필 변경
상기 URL로 보내는 모든 요청은 인증 헤더(Authorization
) 필요!
프로필 전체 조회 기능
성공 시 다음의 데이터와 함께 200 응답을 리턴.
기본 페이지 단위는 10.
만약 데이터 수가 10을 넘어가면 다음 페이지 활성화.
profile_picture
이 null
인 경우 해당 유저는 프로필 사진을 등록하지 않은 경우.
{
"success": true,
"result": {
"count": 4,
"data": [
{
"uuid": "f179b28e-a7a0-48ef-b685-800509e2fe79",
"user": {
"email": "[email protected]"
},
"username": "샘플 유저 2",
"profile_picture": null
},
{
"uuid": "37328c64-3d70-4cc0-b621-955b99f870d1",
"user": {
"email": "[email protected]"
},
"username": "샘플 유저 3",
"profile_picture": null
},
{
"uuid": "77c7609a-bf79-48c0-8cdc-bacc168747cc",
"user": {
"email": "[email protected]"
},
"username": "개발자",
"profile_picture": null
},
{
"uuid": "0def54af-1d1e-4762-8399-f541a9ae0e75",
"user": {
"email": "[email protected]"
},
"username": "홍길동",
"profile_picture": null
},
],
"paging": {
"previous": null,
"next": "http://127.0.0.1:8000/api/profiles/?page=2"
}
},
"message": null
}
실패 시 401(Unauthorized) 응답 리턴.
프로필 상세 조회 기능
본인 프로필만 조회 가능
성공 시 다음의 데이터와 함께 200 응답을 리턴.
{
"success": true,
"result": {
"uuid": "77c7609a-bf79-48c0-8cdc-bacc168747cc",
"user": {
"email": "[email protected]"
},
"username": "개발자",
"profile_picture": null
},
"message": null
}
실패 시 실패 사유에 따라 다음의 응답 코드를 리턴:
- 401 : 인증 헤더 자체가 없는 경우
- 403 : 인증 헤더가 존재하지만, 로그인 된 유저와 다른 경우 (본인 프로필만 조회 가능)
프로필 변경
변경할 수 있는 항목: 닉네임, 프로필 사진
본인 프로필만 변경 가능
만약 프로필 사진 업로드 시, multipart/form-data
형식의 파일 업로드 요청을 보낼 것!
닉네임만 바꾸는 경우, application/json
요청을 보내도 무방.
닉네임의 경우 username
키, 프로필 사진의 경우 profile_picture
키를 활용하면 됨.
프로필 정보 수정에 성공하면 다음의 데이터와 함께 200 응답을 리턴.
{
"success": true,
"result": {
"username": "개발자",
"profile_picture": "http://127.0.0.1:8000/media/profile_pictures/picture_W2hV6AE.jpg"
},
"message": null
}
정보 수정에 실패하면 실패 사유와 함께 4xx 응답을 리턴:
- 400 : 프로필 사진에 지원되지 않는 파일 포맷을 업로드한 경우
- 401 : 인증 토큰이 없는 경우
- 403 : 수정 권한이 없는 경우 (본인의 프로필만 수정 가능)
프로필 사진 조회가 필요한 경우 profile_picture
에 담긴 URL로 GET 요청을 보내면 됨!