标题说明了一切。我对此很陌生,所以我确信这一定是一个简单的错误。 这是 Controller
$scope.removeProduct = function(product){
console.log(product._id);
var inData = new Object();
inData._id = product._id;
console.log(inData);
$http({ url:"/api/deleteprod/", inData, method: "POST"
}).then(function () {
console.log("got here");
var index = $scope.vehicles.indexOf(product);
$scope.vehicles.splice(index, 1);
})
};
这是服务器端。
module.exports = function(app, mongoose, config) {
app.post('/api/deleteprod', function(req, res){
console.log("in app post",req);
var MongoClient = mongodb.MongoClient;
var url='mongodb://localhost:27017/seedsdev';
});
};
显然我想要的是将 _id 传递到服务器,以便我可以使用它,但是当我输出 req 时,它大约有 50 页长,并且没有我想要的信息。在它通过之前,可以通过 console.log 看到该对象没有问题。
我犯的菜鸟错误是什么?
最佳答案
调用 $http
时,您可以使用 data
属性传递 post
数据。当前您正在传递 inData
属性。更改为:
$http({ url:"/api/deleteprod/", data: inData, method: "POST" }).then(...)
更新:
在服务器端,您需要确保有一个 JSON 解析中间件,例如 body-parser
中的中间件:
app.use(require('body-parser').json())
使用 body-parser
解析正文后,您将拥有一个包含已解析 JSON 的 req.body
属性。
关于javascript - 无法使用 AngularJS 将对象传递到 Web 后端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41530509/