当用户提交表单时,服务器应该收到更新轮询数据库的PUT请求。奇怪的是,在我的开发控制台中,我可以看到立即调用Poll.update的回调,但PUT请求需要120000毫秒。然后,即使开发控制台显示成功的PUT请求,数据库也不会更新,并且永远不会调用我的.success回调。
更新了[对象]
PUT / api / polls / 5599725069753a7711fd4274 / 0 200 120083ms
在我的浏览器中,我只看到没有状态代码的PUT请求。我没有看到任何错误消息。
民意调查控制器的路线:
var express = require('express');
var controller = require('./poll.controller');
var router = express.Router();
router.put('/:id', controller.update);
module.exports = router;
Mongoose Poll控制器:
exports.update = function(req, res) {
var update = {$set: {'poll_name': 'Poll has been updated'}};
Poll.update(req.params.id, update, function(err, num, doc) {
if(err) console.log(err);
else {
console.log('Updated ' + doc); // This is logged after vote is submitted
}
});
};
单击提交时调用的角度代码:
$scope.addVote = function() {
$http.put('api/polls/' + $scope._id).success(function(result) {
console.log('Vote submitted'); //This is never called
}
);
};
答案 0 :(得分:0)
您的服务器没有发送任何响应,这就是您在很长一段时间后看到请求结束的原因。在console.log之后添加res.send,您将看到在客户端收到的响应