Python 为什么我的CSRF令牌在Django失败?

Python 为什么我的CSRF令牌在Django失败?,python,django,django-csrf,Python,Django,Django Csrf,我在views.py中提供了CSRF,并在模板中包含了CSRF_令牌,但由于“CSRF_令牌失败”,搜索仍然无法工作 My views.py代码是: args = {} args.update(csrf(request)) args['articles']= Article.objects.all() args['lang'] = language args['session_language']=session_language return render_to_response('artic

我在views.py中提供了CSRF,并在模板中包含了CSRF_令牌,但由于“CSRF_令牌失败”,搜索仍然无法工作

My views.py代码是:

args = {}
args.update(csrf(request))
args['articles']= Article.objects.all()
args['lang'] = language
args['session_language']=session_language
return render_to_response('articles.html', args)
模板代码是

搜索 {%csrf_令牌%} csrf_标记只是所需的字符串,您需要对其进行处理。对于初学者来说,在脚本中的模板中捕获它意味着javascript知道它

{# Place this somewhere in your template #}
<script type="text/javascript">
    var csrf_token = "{{ csrf_token }}";
</script>

在此之后,如何提交AJAX请求取决于您,但您现在可以将其作为POST提交的一部分。

您需要在每个POST请求中传递csrf令牌值

我们可能需要看到更多的代码和堆栈跟踪。你想做什么?您的表单在哪里?如何提交?csrf_令牌是否在表单标签中?这是一个常规的HTML表单提交吗?你在使用某种AJAX吗?是的,我在使用AJAX,所以csrf_标记不在HTML表单中。你的AJAX post代码在哪里?