Django CSRF令牌验证
如果我从按钮发送AJAX POST请求。我需要在我的视图中验证CSRF令牌吗?还是Django在接受帖子时会自动为您验证?如果没有,我如何自己手动验证它 另外,当您创建表单并传入请求时,表单对象将自动执行此验证,这是否正确 jQuery:Django CSRF令牌验证,django,Django,如果我从按钮发送AJAX POST请求。我需要在我的视图中验证CSRF令牌吗?还是Django在接受帖子时会自动为您验证?如果没有,我如何自己手动验证它 另外,当您创建表单并传入请求时,表单对象将自动执行此验证,这是否正确 jQuery: <script> $(document).ready(function() { $('#button1').click(function(){ $.post("/", { unique_id : "{{ unique_
<script>
$(document).ready(function() {
$('#button1').click(function(){
$.post("/", {
unique_id : "{{ unique_id }}",
csrfmiddlewaretoken: '{{ csrf_token }}'
});
});
});
</script>
$(文档).ready(函数(){
$('#按钮1')。单击(函数(){
$.post(“/”,{
唯一id:“{{unique_id}}”,
csrfmiddlewaretoken:“{{csrf_令牌}”
});
});
});
如果项目设置.py
中的中间件类中有'django.middleware.csrf.CsrfViewMiddleware'
,则CsrfViewMiddleware
将自动验证csrf\u令牌。这一点在报告中也提到:
对于所有未使用HTTP GET、HEAD和OPTIONS的传入请求
或跟踪,必须存在CSRF cookie,并且“csrfmiddlewaretoken”
字段必须存在且正确。如果不是,用户将获得
403错误
此检查由CsrfViewMiddleware完成