我有一段代码,我从服务器上删除了一个文件。当然,我可以先检查文件是否存在,然后删除它;我已经这样做了。但是,真正困扰我的是为什么express.js应用程序在想要删除不存在的文件时崩溃?我得到了错误:ENOENT,取消链接'。
fs.unlink(path, function(err){
if (err) throw err;
});
如果在上面的代码"路径"不存在,我得到" ENOENT"错误和服务器崩溃。 我想" server.on('错误',onError);"在www文件中也处理这样的错误。是否可以添加这样的处理程序?
答案 0 :(得分:0)
所以你应该在那里处理那个错误。这是代码中最能知道如何处理它以及导致它的原因。更广泛的最后手段是server.on('error', handler)
,但这是针对快速HTTP服务处理逻辑本身的错误,而不是整个节点过程中的任何错误。对于流程中的任何错误,都有process.on('uncaughtException', handler)
。
为什么express.js不处理这样的错误
因为express不是无所不知的,只有你知道处理这个错误的正确方法。对于所有表达的人来说,崩溃过程 IS 是正确的行为。