[Vue-Django] csrf token

JeongChaeJin·2022년 9월 17일
0

Vue-Django

목록 보기
14/14
  • Django에서 check 하는 헤더는 X-CsrfToken이다.

    • settings에서 이름 변경도 가능하긴하다.
  • X-CsrfToken은 Django에서 만들어서 Client로 Sending 해주고, Client는 Cookie에 이를 저장한다.

  • Vue와 Django sink

    • Django에서 내어줄 때 쿠키이름을 무엇으로 할 것인지
    • 헤더에 담을 때 헤더 이름을 무엇으로 할지
<script>
    axios.defaults.xsrfCookieName = 'csrftoken';
    axios.defaults.xsrfHeaderName = 'X-CSRFToken';
  ...
</script>
  • 전역으로 싱크를 맞춰주면 편하게 잘 전송된다.

  • django가 csrf를 전송하지 않았을 경우 에러가 난다.

@method_decorator(ensure_csrf_cookie, name='dispatch')

  • 가장 먼저 화면에 나오는 쪽에 해당 데코레이터 넣어주면된다.
profile
OnePunchLotto

0개의 댓글