【发布时间】:2018-03-07 20:59:21
【问题描述】:
ExpressJS 新手警告
我有一个使用 expressjs 运行的简单服务器,并且在所有图像都存在时一切正常。但是如果缺少图像,expressjs 会停止并出现以下错误
(node:5793) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: Cannot find module 'jpg'
这会阻止加载任何其他内容,甚至阻止链接正常工作。页面只是挂在那里。不应该简单地不提供图像(发送 404)并且仍然允许站点工作吗?
更新
router.get('/*', (req, res, next) => {
dynamicStatic.setPath(path.resolve(__dirname, 'public/templates/' +
app.get('templatePath')));
res.render('index');
});
我使用 dynamicStatic 是因为我需要能够根据某些条件动态设置路径。这在引擎盖下设置了 express.static。我不认为这与它有任何关系,因为其他图像都很好。不过,我当然可能是错的。
更新 2 图像保持在(挂起)状态,这是挂断的来源。
【问题讨论】:
-
你能展示你的代码吗?
-
不提供图片(发送 404)并仍然允许网站正常工作难道不是很简单吗?是的。 :)
-
@Atef 在上面添加了一些代码 sn-p。