jquery - Django 。 Ajax 。这样发送csrf token是不是错了?

标签 jquery ajax django

我想知道我的做法是否正确以及是否安全。通常我使用 Jquery 在 AJAX 请求上发送 csrf token ,如下所示:

$.ajax({
       method: "POST",
       ...
       data: {...'csrfmiddlewaretoken': '{{csrf_token}}'},
       });

它可以工作,但是 documentation没有说任何关于做这样的事情。这和执行文档建议的操作(获取 cookie 并在 header 中设置)有什么区别?

最佳答案

从 cookie 读取值然后设置 header 的优点是重复性较低。如果您的 ajax 请求位于静态 javascript 文件中,它也可以工作(如果它不是 Django 模板,那么您不能使用 {{ csrf_token }})

但是,如果您愿意将 csrf token 添加到每个 ajax post 请求的数据中,那很好,这样做没有问题。

关于jquery - Django 。 Ajax 。这样发送csrf token是不是错了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35300876/

相关文章:

javascript - 计算用户在我的网站上加载页面的次数?

html - 在 Angular 5 App 中首次加载 App 时不播放背景视频

ajax - 如何使用 ActionScript 3 进行 cometd 长轮询?

python - 如何提高Python脚本的内存效率

python - Django .save() 不可预测地处理 update_fields 输入

jquery - expand.js - 展开另一个 div 时折叠

javascript - 所选选项必须在 onchange 函数之后显示

php - 单击链接时运行 php 代码

javascript - 通过 Ajax 调用发送 bool 值时,PHP 将值作为字符串获取

python - 如何使用 Django 创建视频文件上传表单?