CSRF之Ajax请求

  A:Ajax提交数据是,携带的CSRF在data中:

  csrf.html  

<form method="POST" action="/csrf.html">
{% csrf_token %}
<input id="user" type="text" name="user" />
<input type="submit" value="提交"/>
<a onclick="submitForm();">Ajax提交</a>
</form> <script src="/static/jquery-1.12.4.js"></script>
<script>
function submitForm(){
var csrf = $('input[name="csrfmiddlewaretoken"]').val();
var user = $('#user').val();
$.ajax({
url: '/csrf.html',
type: 'POST',
data: {"user":user, 'csrfmiddlewaretoken':csrf},
success:function(arg){
console.log(arg);
}
})
}
</script>

  B:Ajax提交数据是,携带的CSRF在请求头中:

  用jQuery.cookie 对cookie进行操作。

<form method="POST" action="/csrf.html">
{% csrf_token %}
<input id="user" type="text" name="user" />
<input type="submit" value="提交"/>
<a onclick="submitForm();">Ajax提交</a>
</form> <script src="/static/jquery-1.12.4.js"></script>
<script src="/static/jquery.cookie.js"></script> <script>
function submitForm(){
var token = $.cookie('csrftoken');
var user = $('#user').val()
$.ajax({
url: '/csrf.html',
type: 'POST',
headers:{'X-CSRFToken': token},
data: { "user":user},
success:function(arg){
console.log(arg);
}
})
}
</script>

-------- END --------

最新文章

  1. Bootstrap表单
  2. SQL中group by的用法
  3. javascript-处理XML
  4. java与数据结构(3)---java实现循环链表
  5. iOS10 相关的隐私设置,
  6. 通用HttpClientUtil工具类
  7. oracle 修改用户密码
  8. WebService关于Unable to find required classes (javax.activation.DataHandler and javax.mail.internet.MimeMultipart)问题解决
  9. CF1129D Isolation(分块+DP)
  10. 命令和python模式转换
  11. python基础:re模块匹配时贪婪和非贪婪模式
  12. Spring定时器corn表达式详解
  13. Pycharm主题设置以及导入方式
  14. [转]happybase1.0 报错:ThriftPy does not support generating module with path in protocol &#39;f&#39;
  15. syslog - 日志文件详解
  16. 【Linux】安装openssh-server依赖openssh-client版本错误的解决办法
  17. 浅析CentOS和RedHat Linux的区别
  18. 微信公众号支付-Common
  19. FastDFS+Nginx分布式文件系统部署安装
  20. NYOJ 1022 合纵连横 (并查集)

热门文章

  1. API+RESTful
  2. mybatis-plus 获取新增id
  3. 51nod 1116 K进制下的大数
  4. TCP/IP网络协议基础
  5. 解决ASP.NET Core通过docker-compose up启动应用无法配置https的解决办法
  6. [BZOJ1008][HNOI2008]越狱 组合数学
  7. RFTWEB测试对象抓取的方法
  8. android ListView 分析(一)
  9. lua使用lfs.dll库进行文件操作
  10. QML中使用相对路径