2014-01-09 2 views
0

저는 Django REST 프레임 워크를 사용하고 있습니다. http://atata.com/en/api/v1/add_comment/API에 대한 POST 요청 방법을 알려주십시오. 난각부 사용하기

views.py (API)를

class AddComment(generics.CreateAPIView): 
""" 
Create new comment. 
Example API structure: 
{ 
    "post_pk": 1, 
    "name": "MyName", 
    "email": "[email protected]", 
    "text": "This is text message!" 
} 
""" 
model = Comment 
serializer_class = CommentSerializers 

및 API 작품 : 수동으로 페이지에 데이터를 입력하면 쓰기 API를 작동합니다.

controllers.js

var app = angular.module('controllers', []); 

app.controller('CommentAddCtrl', function($scope, Restangular){ 
    $scope.logComment = function(mail, name, text){ 
     var url = window.location; 
     var pk = url.hash.split('$pk:')[1]; 
     var url_add_comment_api = './en/api/v1/add_comment'; 

     if (mail === undefined || name == undefined || text === undefined) 
      alert ('Error!'); 
     else { 
      var comment = { 
        post_pk: pk, 
        name: name, 
        email: mail, 
       text: text 
       }; 
      this.add_comment = Restangular.all(url_add_comment_api).post(comment); 
      }   
    }; 
}); 

때 콘솔 점점 오류 : POST http://atata.com/en/api/v1/add_comment/ 403() 당신은 토큰 어딘가에서 CSRF를 누락 될 수 있습니다

+0

전달하고 API 키가 있습니까? 그게 "403 (FORBIDDEN)"이라고 말하는 이유 일 수 있습니다. –

+0

[CSRF docs] (http://django-angular.readthedocs.org/en/latest/csrf-protection.html)를 따랐습니까? – mariodev

답변