url 설정 .
http://localhost8000/user 와같이 받을때
프로토콜 // 호스트 // 리소스
리소스 , 엔드포인트 user 을 맵핑하여
루트 - urls 파일에서 include 하여 다른 urls파일로 이동하여 준다 .
from django.urls import path,include
urlpatterns = [
path('user',include('user.urls'))
]
user 을 맵핑 해서 user 앱에 urls파일로 이동해서 처리 하라는 의미
user 앱에 urls을 생성후 다음과 같이 붙여넣기 ~
#user.urls
from django.urls path
urlpatterns = [
]
#user.urls 오면
#user.urls
from django.urls path
urlpatterns = [
path('')
]
#http://localhost8000/user 와같이 user 뒤에 아무것도 없으므로
#path('')요렇게 빈처리를함
#path('') 가왔을때
#프론트의 요청을 View에서 처리하기 위해 . 이때 처리하고싶은
view를 묶어줘야되요 .
View.py에있는
클레스를 임폴트를 해야함 .
그러므로 view를 먼저 기본만 작성할꼐요
#view.py
from django.views import View #View를 상속받기위해 import
다시 user.url 로돌아오면 . 
from .view import SignUpView 를 추가해준다 .
. 는 같은 폴더라는 의미이고 같은폴더의 view 의 SignUpView를 임폴트
가져오겟다는 의미.
from django.urls import path
from .views import SignUpView
urlpatterns = [
path('',SignUpView.as_view())
#''가 들어오면 SignUpView으#로 이동하겠다 .
#여기서 .as_view() 는 Get 일수도있구 Post 일수도있
#는데 이것을 알아듣고 처리할수있는 메소드 .
]
from django.views import View
#SignUpView 를 받으면 헬로를 출력
class SignUpView(View):
def post(self , request): #request 프론트론 응답 , #Self? #post , #get ??
print ("Hello")
http POST localhost:8000/user name="웅이" address="테헤란로" phone_number="010-1234-1234"
요렇게 데이터를 보내면 json body 가 들어옴 .
Get 은 json head ???
json으로 들어오는걸 파이썬화 시켜야하니 . 다음과같이 import해준다 .
#views.py
import json
from django.views import View
class SignUpView(View):
def post(self , request):
data =json.loads(request.body) #request.body가 jason이니까 요걸 파이썬 딕셔너리로 바꾸어 주고 싶어서 . json.loads라는 함수를 불러요 .
그다음
다시 http POST localhost:8000/user name="웅이" 호출해보세요
아래와 같이 딕셔너리로 출력됩니다 .
우리는 프론트엔드에 알기쉽게 전달하기위해 .
딕셔너리로 해준거 .

최종목표로는 jsonresponse 하여 프론트엔드에게 response를 주는것이다 . 그러므로 다음과 같이 한다 .
#views.py
import json
from django.views import View
from django.http import JsonResponse
class SignUpView(View):
def post(self , request):
data =json.loads(request.body)
return JsonResponse({"name":data["name"]} , status=200)
#프론트엔드에서 편하게 보기위해 딕셔너리로