资源上的空主体.$save



所以我尝试了

的建议
    AngularJS post空请求? AngularJS $resource RESTful示例
  • 在$resource上发送请求正文

但是我仍然得到一个空的request。body

我可以做一个get很好,甚至为get传递一个id。但是我似乎不能POST和传输数据到服务器。

控制器:

.controller("createEventController", ["$scope", 'CreateEventService', '$location', function($scope, CreateEventService, $location){
    $scope.event = {};
    $scope.submitEvent = function(){
        console.log($scope.event);
        var events = new CreateEventService($scope.event);
        console.log(events);
        events.save(function(response){
            console.log(response);
        }, function(error){
            console.log(error);
        });
    }
}])

服务
factory('CreateEventService', function($resource){      
   return $resource('api/createEvent');
});

events.save(...)更改为events.$save(...)

您应该使用bodyParser.json()$resource,默认情况下发送他的请求与头"Content-Type": "application/json;charset=UTF-8"和没有bodyParser.json()你的API是无法处理请求内容。

如果使用express 4.1.2,尽管它担心bodyParser()被弃用,但是

app.use(bodyParser.urlencoded({
extended: true
}));

由于某种原因,给了我一个空的身体。无论出于何种原因,没有urlencoded之前崩溃了我的服务器(我认为是旧的express版本)。只要把它改回(使用express 4.1.2)

app.use(bodyParser());

和固定的。我还删除了methodOverride(),因为这导致我的服务器挂起。如果有人知道更正确的方法,我将不胜感激。

相关内容

  • 没有找到相关文章

最新更新