我构建了一个rest-API来在mongodb中添加待办事项。我可以通过在邮递员中使用以下设置来成功保存实例:使用来自Angular.js的帖子不起作用
http://localhost:3000/api/addtodo x-www-form-urlencoded with value text =“Test”,completed:“false”。
现在,当我尝试复制这与Angular,它不工作,待办事项被保存,但没有文本和完成属性,我似乎无法访问文本或从身体完成的值。我究竟做错了什么?下面的代码:
角HTML:
<div id="todo-form" class="row">
<div class="col-sm-8 col-sm-offset-2 text-center">
<form>
<div class="form-group">
<!-- BIND THIS VALUE TO formData.text IN ANGULAR -->
<input type="text" class="form-control input-lg text-center" placeholder="I want to buy a puppy that will love me forever" ng-model="formData.text">
</div>
<!-- createToDo() WILL CREATE NEW TODOS -->
<button type="submit" class="btn btn-primary btn-lg" ng-click="createTodo()">Add</button>
</form>
</div>
</div>
角JS:
$scope.createTodo = function() {
$http.post('/api//addtodo', $scope.formData)
.success(function(data) {
$scope.formData = {}; // clear the form so our user is ready to enter another
$scope.todos = data;
console.log(data);
})
.error(function(data) {
console.log('Error: ' + data);
});
};
REST的API:
router.post('/addtodo', function(req,res) {
var Todo = require('../models/Todo.js');
var todo = new Todo();
todo.text = req.body.text;
todo.completed = req.body.completed;
todo.save(function (err) {
if(!err) {
return console.log("created");
} else {
return console.log(err);
}
});
return res.send(todo);
});
确保您在todoform页 – skmahawar 2015-02-09 14:35:58