zoukankan      html  css  js  c++  java
  • ajax通过 csrf

    当你通过ajax提交post请求时会出现如下内容:

    解决:

    1、新建一个js文件

    function getCookie(name) {
    
        var cookieValue = null;
    
        if (document.cookie && document.cookie !== '') {
    
            var cookies = document.cookie.split(';');
    
            for (var i = 0; i < cookies.length; i++) {
    
                var cookie = jQuery.trim(cookies[i]);
    
                // Does this cookie string begin with the name we want?
    
                if (cookie.substring(0, name.length + 1) === (name + '=')) {
    
                    cookieValue = decodeURIComponent(cookie.substring(name.length + 1));
    
                    break;
    
                }
    
            }
    
        }
    
        return cookieValue;
    
    }
    
    var csrftoken = getCookie('csrftoken');
    
    function csrfSafeMethod(method) {
    
      // these HTTP methods do not require CSRF protection
    
      return (/^(GET|HEAD|OPTIONS|TRACE)$/.test(method));
    
    }
    
     
    
    $.ajaxSetup({
    
      beforeSend: function (xhr, settings) {
    
        if (!csrfSafeMethod(settings.type) && !this.crossDomain) {
    
          xhr.setRequestHeader("X-CSRFToken", csrftoken);
    
        }
    
      }
    
    });

    页面引用这个文件

    <script src="/static/js/ajax_setup.js"></script>
  • 相关阅读:
    dede首页调用分类信息
    install sphinx
    rails新环境
    互联网创业三件事:钱、人和项目
    Remove Duplicate Elements from an Array using jQuery
    rails新环境
    rails新环境
    牛人
    电动车电池
    rails新环境
  • 原文地址:https://www.cnblogs.com/HByang/p/12836419.html
Copyright © 2011-2022 走看看