Node.js 尝试从mongodb获取数据时出错:Can';t在发送邮件后设置邮件头
我正在检查作业(通过作业ID)是否已经存在于数据库中,如果存在,则在查看页面中显示它 我试图通过Nodejs、Express路由器和控制器从MongoDB获取数据到HTML视图页面。我想问题出在路由器页面上。我不知道如何将数据从节点传递到路由器,从路由器传递到控制器。我有作业ID,我需要获取与该作业ID对应的所有详细信息,并将其显示在视图页面中。你能帮帮我吗 路由器代码:Node.js 尝试从mongodb获取数据时出错:Can';t在发送邮件后设置邮件头,node.js,express,mean-stack,Node.js,Express,Mean Stack,我正在检查作业(通过作业ID)是否已经存在于数据库中,如果存在,则在查看页面中显示它 我试图通过Nodejs、Express路由器和控制器从MongoDB获取数据到HTML视图页面。我想问题出在路由器页面上。我不知道如何将数据从节点传递到路由器,从路由器传递到控制器。我有作业ID,我需要获取与该作业ID对应的所有详细信息,并将其显示在视图页面中。你能帮帮我吗 路由器代码: router.post('/RequirementView',function(req,res) { addRequ
router.post('/RequirementView',function(req,res)
{
addRequirement.requirementView(req,res);
res.send(res.requirement);
});
exports.requirementView = function(req, res) {
if (req.body.JobID) {
RequirementModel.findOne({ 'JobID': req.body.JobID }, function(err, requirement) {
if (requirement != null) {
requirement.Vertical = req.body.Vertical || requirement.Vertical;
requirement.save(function(err) {
res.status(200).send(requirement);
});
节点代码:
router.post('/RequirementView',function(req,res)
{
addRequirement.requirementView(req,res);
res.send(res.requirement);
});
exports.requirementView = function(req, res) {
if (req.body.JobID) {
RequirementModel.findOne({ 'JobID': req.body.JobID }, function(err, requirement) {
if (requirement != null) {
requirement.Vertical = req.body.Vertical || requirement.Vertical;
requirement.save(function(err) {
res.status(200).send(requirement);
});
这不是Mongo的问题 该问题是由调用
res.send()
两次引起的-在exports.requirementView
中调用一次,然后在/requirementView
处理程序中调用第二次
它被调用两次,因为在路由处理程序中,您首先调用:
addRequirement.requirementView(req,res);
(其中包括es.状态(200).发送(要求);
)
然后:
res.send(res.requirement);
这是对res.send()的第二个调用。您正在执行res.send()两次。尝试删除res.send(res.requirement);因为您已经在requirementView模块中发送了响应如何修复此问题,我的控制器是main.Controller('requirementDetailedViewController',函数($scope,$http,$rootScope,$location){$scope.DetailedViewRequirement=function(){$http.post('requirement/requirementView',$rootScope.item.)。成功(函数(数据){if(data){$location.path('RequirementDetailedView');}else{$scope.error_message=data.message;$rootScope.sess=null;}}}我的控制器总是空的