如何在进行AJAX后设置角度为X-XSRF-TOKEN

TJB*_*TJB 5 ajax post csrf angularjs

我理解跨站点伪造请求,但我不确定一件事,如何设置角度的X-XSRF-TOKEN以匹配cookie.我认为在发出或发布请求时会通过Angular的$ http提供商,但是当我尝试发布请求时,我仍然会收到403.我正在使用Django作为后端,因此我设置了$ httpProviders cookie和标题名称.

function Config($locationProvider, $stateProvider, $urlRouterProvider, $httpProvider) {

    $locationProvider.html5Mode(true);
    $httpProvider.defaults.xsrfCookieName = 'csrftoken';
    $httpProvider.defaults.xsrfHeaderName = 'X-CSRFToken';
    $httpProvider.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';

var promise = $http({
            method: method,
            url: (isApi ? Config.api_path : '/') + uri,
            'X-CSRFToken': $http.csrftoken,
            data: data || {},
            timeout: deferred.promise
        })
Run Code Online (Sandbox Code Playgroud)