git clone https://github.com/OnTalk-mj/BackEnd.git
cd BackEndWindows:
python -m venv venv
venv\Scripts\activateMac/Linux:
python3 -m venv venv
source venv/bin/activatepip install -r requirements.txt - 아직 구현 X, 안해도 작동 가능하게 함python manage.py migrate
python manage.py runserver접속: http://localhost:8000/
.env파일 필요 시 안내- SECRET_KEY, DB 설정 등 따로 공지 (현재는 Settings에 할당, 추후에 바꿀 예정)
- Base URL:
http://localhost:8000/api/ - 포맷: JSON
- 인증 필요: 일부 API (JWT AccessToken 필요)
| API 이름 | 메서드 | URL | 인증 | 설명 |
|---|---|---|---|---|
| 회원가입 | POST | /api/accounts/signup/ |
❌ | 사용자 회원가입 |
| 로그인 | POST | /api/accounts/login/ |
❌ | 사용자 로그인 (JWT 발급) |
| 토큰 재발급 | POST | /api/refresh/ |
✅ Refresh Token 필요 | Access Token 재발급 |
| ID 중복 검사 | POST | /api/accounts/id-check/ |
❌ | username 중복 여부 확인 |
| 내 정보 조회 | GET | /api/accounts/mypage/ |
✅ | 현재 로그인한 사용자 정보 조회 |
| 내 정보 수정 | PATCH | /api/accounts/mypage/update/ |
✅ | 사용자 개인정보 수정 |
| 상담센터 검색 | GET | /api/consult/ |
❌ | 지역/키워드/상담 분야 필터 검색 |
- URL:
/api/accounts/signup/ - Method:
POST - 인증: X, 필요 없음
{
"username": "abcd1234@naver.com",
"password": "비밀번호",
"name": "홍길동",
"birthdate": "20000101",
"phone": "01012345678",
"address": "서울시 강남구 테헤란로 123",
"zipcode": "12345"
}{
"message": "회원가입이 완료되었습니다!"
}- URL:
/api/accounts/login/ - Method:
POST - 인증: X, 필요 없음
{
"username": "abcd1234@naver.com",
"password": "비밀번호"
}{
"refresh": "리프레시 토큰",
"access": "액세스 토큰"
}- URL:
/api/refresh/ - Method:
POST - 인증: O, Refresh Token 필요
{
"refresh": "리프레시 토큰"
}{
"access": "새로운 액세스 토큰"
}- URL:
/api/accounts/id-check/ - Method:
POST - 인증: X, 필요 없음
{
"username": "abcd1234@naver.com"
}{
"exists": true
}
exists: true➔ 사용 불가
exists: false➔ 사용 가능
- URL:
/api/accounts/mypage/ - Method:
GET - 인증: O, Access Token 필요
{
"username": "abcd1234@naver.com",
"email": "abcd1234@naver.com",
"phone": "01012345678",
"name": "홍길동",
"birthdate": "20000101",
"address": "서울시 강남구 테헤란로 123",
"zipcode": "12345"
}- URL:
/api/accounts/mypage/update/ - Method:
PATCH - 인증: O, Access Token 필요
{
"name": "홍길동",
"birthdate": "20000101",
"phone": "01012345678",
"address": "서울시 강남구 테헤란로 123",
"zipcode": "12345"
}{
"message": "회원 정보가 수정되었습니다!"
}- URL:
/api/consult/ - Method:
GET - 인증: X, 필요 없음
region(선택): 지역명 검색keyword(선택): 센터명 키워드 검색fields(선택): 상담 분야 검색 (콤마로 구분, 예:진로,가족)
GET /api/consult/?region=서울&keyword=청소년&fields=진로,가족
[
{
"id": 1,
"name": "서울청소년상담센터",
"region": "서울특별시 강남구",
"category": "진로,우울",
"phone": "02-1234-5678",
"address": "서울시 강남구 테헤란로 123",
"latitude": 37.498095,
"longitude": 127.02761
}
]mypage/,mypage/update/호출 시Authorization: Bearer {AccessToken}헤더 필요- 모든 요청/응답은
Content-Type: application/json사용