Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
var
connect = require('connect');
var app = connect()
.use(function(req, res){
process.nextTick(function() {
res.end('Hello from Connect!');
});
})
.use(function(err, req, res, next) {
res.end(err.message);
});
app.listen(3131);
var
connect = require('connect'),
connectDomain = require('connect-domain');
var app = connect()
.use(connectDomain())
.use(function(req, res){
process.nextTick(function() {
res.end('Hello from Connect!');
});
})
.use(function(err, req, res, next) {
res.end(err.message);
});
app.listen(3131);
var
connect = require('connect'),
connectDomain = require('connect-domain');
var app = connect()
.use(connectDomain())
.use(function(req, res){
process.nextTick(function() {
if (Math.random() > 0.5) {
throw new Error('Asynchronous error from process.nextTick');
} else {
res.end('Hello from Connect!');
}
});
})
.use(function(err, req, res, next) {
res.end(err.message);
});
app.listen(3131);
var
connect = require('connect'),
trycatch = require('trycatch');
var app = connect()
.use(function (req, res, next) {
trycatch(function () {
next();
}, function (err) {
next(err);
});
})
.use(function (req, res){
process.nextTick(function () {
res.end('Hello from Connect!');
});
})
.use(function (err, req, res, next) {
res.end(err.message);
});
app.listen(3131);
var
connect = require('connect'),
trycatch = require('trycatch');
var app = connect()
.use(function (req, res, next) {
trycatch(function () {
next();
}, function (err) {
next(err);
});
})
.use(function (req, res){
process.nextTick(function () {
if (Math.random() > 0.5) {
throw new Error('Asynchronous error from process.nextTick');
} else {
res.end('Hello from Connect!');
}
});
})
.use(function (err, req, res, next) {
res.end(err.message);
});
app.listen(3131);
Обработка асинхронных ошибок с сохранением контекста запроса в connect/express