对POST请求进行验证

时间:2017-03-21 20:52:10

标签: angularjs express

我正在使用棱角分明并与快速后端交谈。我可以从我的.get中检索数据,但我的.post正在生成验证错误

客户端控制器:

 $scope.addFriend = function()
    {
        friendsFactory.addFriend($scope.newFriend, function (data)
        {
            $location.url('/friends' + data._id);
        });
    }

客户工厂:

 factory.addFriend = function (newFriendData, callback) {
        $http.post('/friends', newFriendData)
            .then(function(response)
            {
                console.log(response.data);
                //callback(response.data);
            })
    }

服务器路线:

app.post('/friends', function (request, response) {
        console.log('routes')
        friends.create(request, response);
    })

服务器控制器:

create: function(request, response)
    {
        console.log('request');
        var friendInstance = new Friend();
        friendInstance.first_name = request.params.fname;
        friendInstance.last_name = request.params.lname;
        friendInstance.b_day = request.params.bday;
        friendInstance.save(function(err,data)
        {
            if (err)
            {
                response.json(err);
            }
            else {
                rewponse.json(data);
            }
        })

控制台出错:

Object {errors: Object, message: "Friend validation failed", name: "ValidationError"}

1 个答案:

答案 0 :(得分:1)

这很可能是mongoose错误,您尝试保留的文档不遵循Google朋友架构。