django接受来自angularJS的数据无效

时间:2015-05-13 08:58:05

标签: python django angularjs

我使用angularJS $http向django发送数据,方法为POST
这是我的controller.js

  registerApp.controller('registerCtrl', function($scope, $http) {
    $scope.submitRegisterForm = function() {
      if ($scope.registerForm.$valid) {
        console.log($scope.user);
        $http({
          method: 'POST',
          url: '.',
          data: $scope.user,
          headers: {
            'Content-Type': 'application/x-www-form-urlencoded'
          }
        });
      } else {
        return console.log(3333);
      }
    };
  });

这是我在django的views.py

if request.method == 'POST':
    print request.POST  

但是打印的结果是

<QueryDict: {u'{"username":"bob","password1":"123123","password2":"123123","email":"cot@q.com"}': [u'']}>  

为什么数据是dict的关键?
而{是[u'']来自?

1 个答案:

答案 0 :(得分:0)

仅仅因为您将其称为表单编码数据,并不意味着它实际上是。实际上,您似乎正在发布JSON。删除该标题并通过json.loads(request.body)获取数据。