DRF 설치 및 설정
pip install djangorestframework
settings.py에 등록
INSTALLED_APPS = [
...
'rest_framework',
...
]
URLConf 설정 (urls.py)
from django.urls import path
from . import views
app_name = "articles"
urlpatterns = [
path("html/", views.article_list_html, name="article_list_html"),
path("json-01/", views.json_01, name="json_01"),
path("json-02/", views.json_02, name="json_02"),
path("json-drf/", views.json_drf, name="json_drf"),
]
Serializer 생성 (serializers.py)
from rest_framework import serializers
from .models import Article
class ArticleSerializer(serializers.ModelSerializer):
class Meta:
model = Article
fields = "__all__"
Django의 ModelForm과 유사하게 동작함
뷰 함수 구현 (views.py)
from rest_framework.decorators import api_view
from rest_framework.response import Response
from .serializers import ArticleSerializer
from .models import Article
@api_view(["GET"])
def json_drf(request):
articles = Article.objects.all()
serializer = ArticleSerializer(articles, many=True)
return Response(serializer.data)
@api_view 데코레이터는 DRF의 기능을 사용할 수 있도록 함

API 호출 테스트
클라이언트에서 API 호출 테스트 (my_program.py)
import requests
url = "http://127.0.0.1:8000/api/v1/articles/json-drf"
response = requests.get(url)
print(response) # <Response [200]>
print(response.json()) # JSON 데이터 출력
파이썬 코드로 API를 호출하면 다른 소프트웨어에서도 손쉽게 데이터를 사용할 수 있음

응답된 JSON 데이터는 프론트엔드(Client)에서 처리
- 서버는 JSON 형태로 데이터 제공 → 실제 데이터를 어떻게 보여줄지 프론트엔드에서 처리
Postman
API 개발 및 테스트, 문서화할 수 있는 도구
- API 디자인, 테스트, 문서화, 공유 가능
- 환경 변수 설정과 컬렉션 관리로 반복 작업 간편화
- 팀원들과 협업 기능 제공 (최대 3명 무료)
Postman 사용법
- https://www.postman.com/ 설치 및 회원가입
- My Workspace 접속
- 새로운 Collection 생성
- 요청(Request) 생성 후 URL 및 메서드 설정
- Send 버튼 클릭 → 응답 확인

'∟ Framework > ∟ DRF' 카테고리의 다른 글
Class Based View (CBV) (0) | 2025.03.29 |
---|---|
DRF Single Model CRUD API 구현 (0) | 2025.03.29 |
JSON Response와 Serialization (0) | 2025.03.29 |
RESTful API와 JSON (1) | 2025.03.28 |
HTTP(Hyper Text Transfer Protocol)와 URL(Uniform Resource Locator) 구조 (0) | 2025.03.28 |