2016-05-23 15 views
0

ich versuche und 403. unter Datei My JS HTTP $ http.delete mit Django verwenden:

var myApp = angular.module('myApp',['ui.bootstrap']); 

    myApp.run(function($http) { 
     $http.defaults.headers.post['X-CSRFToken'] = $.cookie('csrftoken'); 
    }); 


    myApp.controller('PostsListController', ['$scope','$http',function($scope,$http) { 
     $http.get('/api/v1/posts/').success(function (data) { 

     $scope.posts = data; 

     }); 
    $scope.deletePost = function(post) { 
       $http.delete('/api/v1/posts/'+ post.id + '/'); 
    }; 

    }]); 

Detail von der Konsole:

{detail: "CSRF Failed: CSRF token missing or incorrect."} 
detail 
: 
"CSRF Failed: CSRF token missing or incorrect." 
+0

Überprüfen Sie Ihr CSRF-Token. Es ist möglicherweise nicht im Cookie gesetzt. –

+0

Sind Sie sicher, dass der Cookie existiert und gesetzt wird? – mariocatch

+0

Ich weiß, dass das Problem in Token, aber ich weiß nicht, welchen Wert zu setzen –

Antwort

1

i mein Problem durch Umschreiben Verfahren gelöst .run ()

myApp.run(function($http) { 
    $http.defaults.xsrfCookieName = 'csrftoken'; 
$http.defaults.xsrfHeaderName = 'X-CSRFToken'; 
});