Django에서 'CSRF 토큰 누락 또는 잘못된'오류를 수정하는 방법을 알아보십시오. ---이 비디오는 https://stackoverflow.com/q/70281016/ 사용자가 'jhnsbrst'(https://stackoverflow.com/u/16333505/)에 의해 질문하고 https://stackoverflow.com/a/70301362/ 사용자가 제공하는 답변에 기초합니다. https://stackoverflow.com/u/16333505/) 'Stack Overflow'웹 사이트. 이 훌륭한 사용자와 StackexChange 커뮤니티 덕분에 공헌에 감사드립니다. 대체 솔루션, 주제, 의견, 개정 내역 등의 최신 업데이트/개발과 같은 원본 콘텐츠 및 더 자세한 내용은 이러한 링크를 방문하십시오. 예를 들어, CSRF 토큰 누락 또는 부정확-DJANGO에서 자동 완성 조명을 사용하여 CC BY-SA BY-SA https:/meta.STACKONC.C.HELP/HLICEXCHANGE.CHELP/HLICEXCHANGE.CHELP/HLICEXCHANGE.COMED at at at at at at at it 'CC By-SA 4.0'(https://creativecommons.org/licenses/by-sa/4.0/) 라이센스에 따라 라이센스가 부여되고 원본 답변 게시물은 'CC Bysa 4.0'(https://creativecommons.org/by-sa/4.0/)에 따라 라이센스가 부여됩니다. 당신에게 어떤 것이 보이면, vlogize [at] gmail [dot] com에서 저를 보내 주시기 바랍니다. --- 웹 애플리케이션, 특히 Django에서 양식 및 Ajax 요청이 포함 된 경우 Autocomplete-Light를 사용하여 Django에서 CSRF 토큰 누락 또는 잘못된 오류를 해결하면 좌절하는 CSRF 토큰 누락 또는 잘못된 오류가 발생할 수 있습니다. 이 문제는 종종 Autocomplete-Light 라이브러리에서 Autocomplete와 같은 기능을 사용할 때 발생합니다. 이 안내서에서는이 문제의 원인을 탐색하고 단계별 솔루션을 제공하여 다시 추적 할 수 있습니다. 크로스 사이트 요청 위조를 나타내는 CSRF 토큰 CSRF를 이해하는 것은 사용자가 동의없이 요청을 제출하도록 속이는 공격 유형입니다. 이를 보호하기 위해 Django에는 모든 양식 제출에 포함되어야하는 CSRF 토큰이 포함되어 있습니다. CSRF 토큰이 누락되거나 잘못 오류가 표시되는 경우 일반적으로 다음과 같은 것을 나타냅니다. CSRF 토큰이 제출중인 양식에서 누락되었습니다. CSRF 토큰이 유효하지 않으며 여러 템플릿으로 작업하는 경우 발생할 수 있습니다. 설명 된 상황에서 Django 애플리케이션의 문제는 Autocomplete-light를 사용하여 데이터를 검색하기 위해 AJAX 기능이있는 양식을 구현하려고 시도 하면서이 오류에 직면했습니다. 근본 원인은 CSRF 토큰을 포함하는 올바른 템플릿을 식별하는 것이 었습니다. 다음은 문제의 단순화 된 고장입니다. 여러 템플릿 : 개발자는 상속이있는 여러 템플릿을 가지고있어 CSRF 토큰을 포함시킬 위치에 대한 혼란이 생겼습니다. 비 사용 템플릿 : CSRF 토큰은 실수로 렌더링되지 않은 템플릿에 부주의하게 포함되어 양식이 제출되었을 때 오류가 발생했습니다. 단계별 솔루션 1 단계 : 일관된 템플릿 상속 확인 잘 구조화 된 기본 템플릿을 사용하고 있는지 확인하십시오. 모든 템플릿은 프로젝트를 구성하고 이와 같은 오류를 최소화하기 위해이 기본 템플릿에서 상속해야합니다. 다음 지침을 따르십시오 : 단일 기본 템플릿 : CSRF 토큰과 같은 필수 코드를 포함하는 하나의 기본 템플릿을 만듭니다. 현명하게 블록을 사용하십시오 : 특정 컨텐츠 또는 양식 필드와 같이 변경되는 템플릿의 부분에 블록 만 사용하십시오. 2 단계 : 양식 템플릿에 CSRF 토큰을 포함시키고 CSRF 토큰을 올바르게 포함 시키십시오. [[이 텍스트 또는 코드 스 니펫을 공개하려면 비디오를 참조하십시오]] 3 단계 : AJAX를 사용한 양식 제출 검토 AJAX 요청을 보낼 때 CSRF 토큰이 포함되어 있는지 확인하십시오. JavaScript에서는 CSRF 토큰이 요청과 함께 전송되도록하십시오. 쿠키에서 검색하여 다음과 같은 AJAX 헤더에 추가 할 수 있습니다. [[[이 텍스트 또는 코드 스 니펫을 공개하려면 비디오를 참조하십시오]] 4 단계 : 테스트 변경을 구현 한 후 오류가 해결되었는지 확인하기 위해 철저한 테스트를 수행하십시오. 양식을 제출하고 CSRF 오류가 지속되는지 확인하십시오. 브라우저의 개발자 도구의 네트워크 요청을 검사하여 CSRF 토큰이 올바르게 전송되고 있는지 확인하십시오. 결론 CSRF 토큰 누락 또는 잘못된 오류는 Django 웹 응용 프로그램에서 일반적인 장애물이 될 수 있습니다. CSRF 토큰의 중요성을 인식하고 구조화 된 템플릿 계층을 유지하면이 문제를 예방할 수 있습니다. 이 게시물에 배치 된 단계를 따르면 오류를 성공적으로 해결하고 방해없이 응용 프로그램의 기능을 계속 개발할 수 있어야합니다. 주요 테이크 아웃은 향후 CSRF 토큰이 올바른 템플릿에 올바르게 포함되도록 항상 이러한 문제를 피하는 것입니다. 행복한 코딩!