相关疑难解决方法(0)

Node.js在uncaughtException上没有显示整个错误消息,是否可能?

在node.js中,如果你捕获uncaughtExceptions,如下所示:

process.on('uncaughtException', function (error) {
  console.log(error);
});
Run Code Online (Sandbox Code Playgroud)

如果您没有捕获到错误并且只是让进程崩溃,则显示的错误消息不包含您收到的所有信息.当您让进程崩溃时,它包含导致错误的行.有没有办法获取完整的错误消息,包括导致错误的行,以便我们可以使用uncaughtException记录此数据.

node.js

29
推荐指数
2
解决办法
2万
查看次数

从Node.JS中的未捕获异常中恢复

好的,所以我有一个问题.如果在处理HTTP请求时发生未捕获的异常,我就没有机会在http.ServerResponse对象上调用end()方法.因此,服务器永远挂起,永远不会满足请求.

这是一个例子:

var express = require('express');
var app = express.createServer();
var reqNum = 0;
app.get('/favicon.ico', function(req, res) {res.send(404);});
app.get('*', function(req, res, next) {
    console.log("Request #", ++reqNum, ":", req.url);
    next();
});
app.get('/error', function(req, res, next) {
    throw new Error("Problem occurred");
});
app.get('/hang', function(req, res, next) {
    console.log("In /hang route");
    setTimeout(function() {
        console.log("In /hang callback");
        if(reqNum >= 3)
            throw new Error("Problem occurred");
        res.send("It worked!");
    }, 2000);
});
process.on('uncaughtException', function(err) {
    console.log("Uncaught exception!", err);
});
app.listen(8080);
Run Code Online (Sandbox Code Playgroud)

如果您访问/错误,则会发生异常,但会被捕获.用户收到错误消息 - 没问题.但是,如果我访问/挂起,服务器最终将抛出未捕获的异常并永久挂起.任何后续的/ hang请求都将挂起.

这很糟糕.有关如何解决此问题的任何建议?

exception node.js uncaught-exception express

19
推荐指数
1
解决办法
9798
查看次数

处理或防止错误在Heroku上崩溃整个node.js应用程序

我有一个在Heroku上托管的node.js应用程序

每当我的应用程序遇到错误时,整个服务器崩溃,使其对任何人都不可用.

有没有办法返回错误页面,并保持服务器活着?

我读了这个,Node.JS永远在Heroku上,但它没有回答我的问题....

error-handling heroku node.js

8
推荐指数
1
解决办法
3414
查看次数

如何阻止节点js服务器崩溃

我是节点js的新手.我试图创建一个简单的HTTP服务器.我按照着名的例子创建了一个'Hello World!' 服务器如下.

var handleRequest = function(req, res) {
  res.writeHead(200);
  res1.end('Hello, World!\n');
};

require('http').createServer(handleRequest).listen(8080);

console.log('Server started on port 8080');
Run Code Online (Sandbox Code Playgroud)

运行此代码将按预期正确启动服务器.但是尝试访问http://127.0.0.1:8080会因为抛出res1未定义的错误而导致崩溃.我希望服务器仍然可以继续运行,并在遇到错误时正常报告错误.

我该如何实现?我试过try-catch但这对我没有帮助:(

javascript webserver node.js

6
推荐指数
1
解决办法
7542
查看次数

防止Node.js PRODUCTION服务器因未知和未处理的异常而崩溃的最佳做法

什么是防止Node.js PRODUCTION服务器因未知和未处理的异常而崩溃的最佳做法?

node.js

2
推荐指数
1
解决办法
1273
查看次数