2015-06-25 51 views

回答

1

只需在您的模板添加的地方:

{% csrf_token %} 

然後在你的js文件應該是水木清華這樣的:

var csrf_token; 

var sendSomeAjax = function(target) { 
    var requestUrl = $(target).data('url'); 

    return $.ajax({ 
     url: requestUrl, 
     type: 'post', 
     headers: { 
      'X-CSRFToken': csrf_token 
     }, 
     dataType: 'json' 
     // also you can pass some 'data: ' here 
    }) 
}; 

$(function() { 
    csrf_token = $('input[name="csrfmiddlewaretoken"]').val(); 

    var target = $('.someSelectorWhereYouHavePassedDataUrlToYourView'); 
    // for example in your template <a href="#" data-url="{% url 'app_url_namespace:view_url_name' %}"</a> 

    sendSomeAjax(target).success(function(data) { 
     // do smth with data =) 
    }); 
}); 
+0

感謝madzohan。對我而言,只是將csrf token的密鑰從'csrftoken'更改爲'csrfmiddlewaretoken'就完成了這項工作。 –