장고 프로젝트 진행시 HTML페이지에서 Get 또는 POST 방식으로 Form에서 파라미터를 전달 할 때 전달된 비 인가된 외부 접근을 방지하기 위한 코드를 삽입 시킬 수 있다.
반드시 <FORM> 태그 아래에 다음 코드를 삽입하기만 하면 된다.
{% csrf_token %}
이 코드는 크로스도메인(Cross-Domain) 이슈에 대한 처리 방법중 하나이다.
장고 프로젝트에서는 반드시 써주어야 함(안써줄 경우 기본 Activate 되어 있기 때문에 오류 발생)
적용 Sample
크로스도메인(Cross-Domain) 이슈
Javascript 는 동일 출처 정책(Same Origin Policy) 라는 정책을 두어 다른 도메인의 서버에 요청하는 것을 보안 문제로 간주하고 이를 차단
<div class="container"> <div class="row mt-5"> <div class="col-12 text-center"> <h1>회원가입</h1> </div> </div> <div class="row mt-5"> <div class="col-12"> <form method="POST" action=""> {% csrf_token %} <div class="mb-3"> <label for="username" class="form-label">사용자이름</label> <input type="text" class="form-control" id="username" aria-describedby="emailHelp" placeholder="사용자 이름"> </div> <div class="mb-3"> <label for="password" class="form-label">비밀번호</label> <input type="password" class="form-control" id="password" placeholder="비밀번호"> </div> <div class="mb-3 form-check"> <input type="checkbox" class="form-check-input" id="exampleCheck1"> <label class="form-check-label" for="exampleCheck1">등록</label> </div> <button type="submit" class="btn btn-primary">Submit</button> </form> </div> </div> </div>
'프로그래밍 > Python' 카테고리의 다른 글
[Django] Form-Template 연동시 폼필드 커스터마이징 하기 (0) | 2021.01.02 |
---|---|
[Django] Form 사용 - 매커니즘 (0) | 2021.01.02 |
장고[Django] HTML-Templates Workflow (0) | 2020.12.28 |
장고관리자-Django admin (0) | 2020.12.28 |
장고(DJango)관련 주요 명령어 (0) | 2020.12.28 |