2015-07-19 1 views
0

Я использую AngularJS вместе с Python & Django и Django REST API. Существует файл JSON, созданный REST API, и мне нужно отправить данные в него с помощью Angular $http.post().Публикация данных в файле JSON в AngularJS - (используя django REST здесь для создания этого файла JSON.)

Мне нужно знать, возможно ли это или нет.

Im главно получать 403 (Forbidden) и 400 (BAD REQUEST) ошибки на посту ..

$http({ 
     method: 'POST', 
     url: '<JSON FILE URL>', 
     data: $scope.tmpDataSet, 
     headers: {'Content-Type': 'application/x-www-form-urlencoded'} 

}}); 

Это мой метод .post(). где im извлекает данные из формы, сделанной в угловом и сохраняя ее в 'tmpDataSet'. Его создание должным образом и им можно хранить в массиве. Мне просто не удалось записать его в файл JSON.

Структура моего файла JSON является

{ 
    "count": 6, 
    "next": null, 
    "previous": null, 
    "results": [ 
     { 
      "name": "fff", 
      "mobile_no": "fff", 
      "email": "[email protected]", 
      "message": "dfdf", 
      "id": 1 
     }, 
     { 
      "name": "asd", 
      "mobile_no": "0987654321", 
      "email": "[email protected]", 
      "message": "no", 
      "id": 2 
     } 
] 

Если больше кода детали необходима, пожалуйста, комментарий.

ответ

0

Эта проблема была решена путем добавления токенов CSRF в угловое приложение и с использованием обычной функции $http.post() со всеми параметрами.

app.config(function($httpProvider) { 
    $httpProvider.defaults.xsrfCookieName = 'csrftoken'; 
    $httpProvider.defaults.xsrfHeaderName = 'X-CSRFToken'; 
}); 

и

$http.post('<URL>', item).error(function(data,status,headers,config){ 
      console.log('COULDNT POST!'); 
     }).success(function(data, status, headers, config){ 
      console.log('POSTED!'); 
     });