(초보자용) Django로 간단한 webAPI를 만들어 봅니다.
개요
이 기사는 초보자 자신이 RESTful API와 swift로 iPhone 용 쿠폰 전달 서비스를 개발한 절차를 차례로 기사로하고 있습니다. 기술 요소를 하나씩 조사하면서 실장했기 때문에 매우 먼 실장이 되고 있습니다.
이번은 pipenv로 만든 장고 환경에서 파이썬을 움직여보십시오. 로 만든 환경에서, Django의 기능을 사용한 심플한 webAPI를 만듭니다.
참고
환경
Mac OS 10.15
VSCode 1.39.2
pipenv 2018.11.26
파이썬 3.7.4
장고 2.2.6
webAPI 사양
쿠폰 코드를 요청하면 쿠폰 코드에 묶는 쿠폰의 내용을 HTTP로 응답한다.
절차
쿠폰의 장고 앱 만들기
pipenv shell 명령을 사용하여 pipenv의 가상 환경으로 들어가 manage.py가 있는 디렉토리로 변경합니다.
coupon이라는 django 앱을 만듭니다.
VSCode에서 폴더를 열면 쿠폰 앱이되어 있습니다.
views.py에 응답 처리 구현
아래와 같이 coupon이라는 함수를 만들고 쿠폰의 내용을 하드 코딩했습니다. 요청 변수 (coupon_code)로 전송되는 쿠폰 코드에 따라 if 문으로 쿠폰을 발행합니다. 응답은 Django
HttpResponse
메서드를 사용하여 Http로 반환합니다.views.py
from django.shortcuts import render
from django.http import HttpResponse
# Create your views here.
def coupon(request):
if 'coupon_code' in request.GET:
coupon_code = request.GET['coupon_code']
if coupon_code == '0001':
result = '1000円引きクーポン!'
elif coupon_code == '0002':
result = '10%引きクーポン!'
else:
result = 'Error:Not found coupon code!'
return HttpResponse(result)
쿠폰 앱 아래에 urls.py 만들기
다음은 경로를 설정합니다. 먼저 coupon 앱 아래에
urls.py
를 새로 만듭니다.coupon/urls.py
from django.urls import path
from . import views
urlpatterns = [
path('', views.coupon, name='coupon'),
]
프로젝트 아래의 urls.py 수정
다음은 프로젝트 아래의 urls.py를 편집합니다.
urlpatterns
의 부분에 path('coupon/',include('coupon.urls'))
를 추가했습니다.ami_coupon_api/urls.py
from django.contrib import admin
from django.urls import path,include
urlpatterns = [
path('admin/', admin.site.urls),
path('hello/', include('hello.urls')),
path('coupon/', include('coupon.urls'))
]
동작 확인
변경 사항을 저장하고 장고 웹 서버를 시작합니다.
$ python manage.py runserver
브라우저에서 아래 URL에 액세스.
http://127.0.0.1:8000/coupon/?coupon_code=0001
올바른 응답이 바뀌는 것을 확인.다른 파라미터를 입력하는 패턴도 확인
쿠폰 코드 0002의 쿠폰 요청
http://127.0.0.1:8000/coupon/?coupon_code=0002
존재하지 않는 쿠폰 코드를 지정한 경우
http://127.0.0.1:8000/coupon/?coupon_code=0003
이상으로 매우 심플한 webAPI의 구현이 가능했습니다. 여기에서 아래와 같이 개조해, 실용에 견딜 수 있는 webAPI로 해 갑니다.
다음 번에는 학습을 위해 장고 템플릿 기능을 사용해보십시오.
Reference
이 문제에 관하여((초보자용) Django로 간단한 webAPI를 만들어 봅니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Ajyarimochi/items/ce072d91a2c00cd0d861텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)