no csrftoken in cookies? 400 报错
django 1.2之后就增加了csrftoken验证机制,post类型的请求都需要在request header中加入csrftoken,这个值可以从cookie中取到,但是我昨天clear了所有的cookie,但是之后这个token始终无法再次生成,所以ajax请求都不能成功。
请问,有谁遇到过这个情况,怎么解决?
找到解决方案了:
from django.core.context_processors import csrf from django.shortcuts import render_to_response def my_view(request): c = {} c.update(csrf(request)) # ... view code here return render_to_response("a_template.html", c)
然后在页面中使用{% csrf_token %}获得这个值。
但是我查看了django的源码,对于它什么时候将这个token写入cookie的那段还是不太清除,有知道的请解释下,谢谢!
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。