Javascript Express res.render卡在无限循环中

Javascript Express res.render卡在无限循环中,javascript,node.js,mongodb,express,handlebars.js,Javascript,Node.js,Mongodb,Express,Handlebars.js,步骤: 从mongodb中提取数据以填充搜索页面上的链接。能够单击链接将最终用户带到由mongodb自动填充的通用业务页面。使用来自mongodb的JSON数据呈现页面 问题: res.render卡在无限循环中(也不会引发错误) 我尝试添加一个if语句,这样res.render就不会再次渲染,但仍然卡在循环中 routes/business.js router.get('/:business', (req, res) => { console.log(req.params.bus

步骤: 从mongodb中提取数据以填充搜索页面上的链接。能够单击链接将最终用户带到由mongodb自动填充的通用业务页面。使用来自mongodb的JSON数据呈现页面

问题: res.render卡在无限循环中(也不会引发错误)

我尝试添加一个if语句,这样res.render就不会再次渲染,但仍然卡在循环中

routes/business.js

router.get('/:business', (req, res) => {
    console.log(req.params.business);
    Business.getBusinessByUrl(req.params.business, (err, business) => {
        if (err) throw err;
        res.render('business', {
            found: true,
            business_name: business.business_name,
            business_profile_image: business.business_profile_image,
            business_url: business.business_url
        });
    });
});

module.exports = router;
module.exports.getBusinessByUrl = function (businessUrl, callback) {
    const query = { business_url: businessUrl };
   Business.find(query, callback);
};
models/business.js

router.get('/:business', (req, res) => {
    console.log(req.params.business);
    Business.getBusinessByUrl(req.params.business, (err, business) => {
        if (err) throw err;
        res.render('business', {
            found: true,
            business_name: business.business_name,
            business_profile_image: business.business_profile_image,
            business_url: business.business_url
        });
    });
});

module.exports = router;
module.exports.getBusinessByUrl = function (businessUrl, callback) {
    const query = { business_url: businessUrl };
   Business.find(query, callback);
};
以下是它在浏览器中的外观:


如果您需要任何其他代码,请告诉我。

经过一段时间的搜索,我找不到任何有用的代码。我终于明白了。碰巧,当我注释掉行
时,它停止无限加载。A我也感谢所有试图帮助我的人。

嘿@Masson Curtis。介意告诉我们在
getBusinessByUrl
func下面发生了什么吗?是的,没问题。如果单个请求的查找失败,您真的想停止服务器吗?这就是
throw err
将要做的,可能需要重新思考一下……为什么你有
if(err)throw err而不是实际的错误处理?看起来加载的页面提供了响应。我认为您混淆了客户端JavaScript和Node.js。服务器没有陷入无限循环,您的浏览器代码是。