📢 공지사항
home

GET, POST 프로토콜 실습

수강계획
2022/01/09
번호
16
복습여부
수강여부
수강일
2022/01/09
속성
get은 브라우저 주소창에 넣으면 자동적으로 보내짐
post는 따로 설정해줘야함
post를 쓰기 위해서 html 안에다가 form을 만들어줘야함(모든 데이터들이 들어감)
<form action=”요청을 하려는 url”>
POST method를 사용해서 서버에 요청을 보낼 때는 항상 csrf 토큰이라는 것을 명시해야함
{% extends 'base.html' %} {% block content %} <div style="height : 20rem; background-color: #38df81; border-radius: 1rem; margin: 2rem;"> <h1> testing </h1> <form action="/account/hello_world/" method="post"> {% csrf_token %} <input type="submit" class="btn btn-primary" value="POST"> </form> </div> {% endblock %}
Python
복사
hello_world.html
view 안에서 post랑 get을 나눠서 처리해줄 알고리즘 적용을 해야함
views.py에 요청을 받은 객체 안에서 method를 찾고 post일 경우, context 문장 넣어서 return 해주기
hello_world.html 파일에 {{ text }} 추가하기
from django.http import HttpResponse from django.shortcuts import render # Create your views here. def hello_world(request): if request.method == "POST": return render(request, 'accountapp/hello_world.html', context={'text': 'POST METHOD!!!'}) else: return render(request, 'accountapp/hello_world.html', context={'text': 'GET METHOD!!!'})
Python
복사
views.py
{% extends 'base.html' %} {% block content %} <div style="height : 20rem; background-color: #38df81; border-radius: 1rem; margin: 2rem;"> <h1> testing </h1> <form action="/account/hello_world/" method="post"> {% csrf_token %} <input type="submit" class="btn btn-primary" value="POST"> </form> <h1> {{ text }} </h1> </div> {% endblock %}
HTML
복사
hello_world.html