zoukankan      html  css  js  c++  java
  • Django,Ajax提交csrf_token处理

    Ajax提交数据时候,携带CSRF:
    a. 放置在data中携带
    
    <form method="POST" action="/csrf1.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: '/csrf1.html',
                type: 'POST',
                data: { "user":user,'csrfmiddlewaretoken': csrf},
                success:function(arg){
                    console.log(arg);
                }
            })
        }
    
    </script>
                    
    b. 放在请求头中
                
    <form method="POST" action="/csrf1.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: '/csrf1.html',
                type: 'POST',
                headers:{'X-CSRFToken': token},
                data: { "user":user},
                success:function(arg){
                    console.log(arg);
                }
            })
        }
    </script>
  • 相关阅读:
    幂等性-接口安全性
    spring 事务
    Disruptor 并发框架
    java中锁的应用
    线程池原理
    并发队列阻塞式与非阻塞式的区别
    Swagger UI教程 API 文档神器 搭配Node使用
    linux ssh_config和sshd_config配置文件
    Linux中iptables设置详细
    Linux(Centos)之安装Redis及注意事项
  • 原文地址:https://www.cnblogs.com/oldpai/p/9637774.html
Copyright © 2011-2022 走看看