在django 1.3中具有jquery和$ .post的CSRF
||
在django 1.3中,现在即使使用ajax也必须使用csrf。
我使用jquery,现在我想将csrf令牌添加到$ .post。我怎样才能做到这一点?我在jquery方面不是很熟练,所以很好的描述会很好。
这是一个评分应用,点击星号即可发送帖子。
我看过django文档,但不了解我的情况该怎么办。我的代码如下:
$(function() {
$(\"#avg\").children().not(\":input\").hide();
$(\"#rating-widget\").children().not(\"select\").hide();
$caption = $(\"<span/>\");
$(\"#avg\").stars({captionEl: $caption});
$(\"#rating-widget\").stars({
inputType: \"select\",
cancelShow: false,
captionEl: $caption,
callback: function(ui, type, value){
--------------> $.post($(\"#rating-widget\").attr(\"action\"), {score: value}, function(data){
});
}
});
$caption.appendTo(\"#rating-widget\");
});
应该说javascript不在模板中,而是在静态文件中。
最好将其放在模板中,以便我可以使用{{ csrf_token }}
提前致谢!
没有找到相关结果
已邀请:
3 个回复
辅奈
搂腹时
陷牡彭拈峰
因此,如果您向该URL发送请求,它将在数据库中找到该帖子,将字段更改为\“ starred \”,然后将响应返回给ajax。 然后,您可以使用成功的回调函数,该函数将相应地更改CSS(填入星号等)。这样,您不必担心CSRF。 但是您可能会问,跨站点脚本攻击该怎么办!好吧,如果您将用户身份验证与Cookie验证结合使用,则不必担心! Aaa和你很好。