Django {%csrf_token%}或@csrf_protect

时间:2011-11-13 08:00:32

标签: django csrf protection django-csrf

我很好奇:我知道Django中有两种csrf保护方式:模板中的{% csrf_token %}和视图中的@csrf_protect

所以,问题是:它们可以互换吗?我的意思是我只能使用@csrf_protect我的模板中没有{% csrf_token %}标记的观点,效果会相同吗?

我问这个因为我在最近的Django项目中使用mako并且没有{% csrf_token %}这样的标签......

感谢!!!

1 个答案:

答案 0 :(得分:2)

你需要两者。 {% csrf_token %}添加POST次请求中包含的隐藏字段。虽然@csrf_protect添加了{% csrf_token %}使用的上下文变量。