728x90
반응형
1. 프로젝트를 만든다.
$ django-admin startproject apiServer
2. settings.py 파일에 rest_framework 를 추가해준다.
settings.py
ALLOWED_HOSTS = ['*']
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'rest_framework',
]
3. 새 마이그레이션을 생성하고 슈퍼유저를 생성해준다.
$ python3 manage.py makemigrations
$ python3 manage.py migrate
$ python3 manage.py createsuperuser
4. 앱을 하나 만들어준다. ( 이름은 상관없습니다. )
$ python3 manage.py startapp chwideukapp
5. apiServer 폴더 안 settings.py 에 만든 앱을 추가해준다.
/apiServer/settings.py
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'rest_framework',
'chwideukapp'
]
6. 새로 만든 앱의 models.py 파일을 수정해준다.
/chwideukapp/models.py
from django.db import models
class ChwideukModel(models.Model):
title = models.CharField(max_length=70, default='')
created_at = models.DateTimeField(auto_now_add=True)
def __str__(self):
return self.title
7. 새 마이그레이션을 생성한다.
$ python3 manage.py makemigrations
$ python3 manage.py migrate
8. serializers.py 파일을 만든다.
/chwideukapp/serializers.py
from rest_framework import serializers
from .models import ChwideukModel
class ChwideukSerializer(serializers.ModelSerializer):
class Meta:
model = ChwideukModel
fields = ['title']
9. views.py 파일을 수정해준다.
from rest_framework.views import APIView
from rest_framework.response import Response
class ChwideukRouter(APIView):
def get(self, request):
return Response({'success': True})
def post(self, request):
return Response({'success': False})
10. apiServer 폴더의 urls.py에 방금 만든 라우터를 추가해준다.
from django.contrib import admin
from django.urls import include, path
from chwideukapp.views import ChwideukRouter
urlpatterns = [
path('admin/', admin.site.urls),
path('api/chwideuk/', ChwideukRouter.as_view())
]
11. 서버를 시작하고 postman으로 실험해보았다. ( 서버 포트는 8000, 로컬 포트는 8001 입니다 )
이제 API 서버와 라우터는 만들었으니 다음 포스트에서는 Selenium을 사용해보겠다.
728x90
반응형
'Back-End > Django' 카테고리의 다른 글
Django | 웹 크롤링 서버 만들기(Windows) | Selenium Crawling Server in Windows | 환경세팅 (0) | 2022.07.12 |
---|---|
Django | 웹 크롤링 서버 만들기(Linux) | Selenium Crawling Server in Linux | 마무리 (0) | 2022.07.07 |
Django | 웹 크롤링 서버 만들기(Linux) | Selenium Crawling Server in Linux | 환경 세팅 (0) | 2022.07.07 |
Django | Scrapy ( 크롤링 프레임워크 ) (0) | 2022.07.06 |
Django | REST API 서버 만들기 | Router (0) | 2022.07.05 |