2013-06-28 3 views
0

Кто-нибудь знает, как реализовать функциональную цепочку, используемую в connect/express. Таким образом, можно сделать это ..Утилита NodeJS Connect/Express app.use

var app = {}, app.stack = []; 
app.use(function(r, s, n){ 
    // dosomething 
}) 

require('http').createServer(function(r, s){ 
    // execute functions in app stack 
}) 
+0

Вы хотите воссоздать стек промежуточного программного обеспечения Connect/Express? Если да: почему? – robertklep

+0

Образование. Эта цепочка func кажется полезной моделью. –

+1

Ну, хорошей отправной точкой будет ['connect/lib/proto.js'] (https://github.com/senchalabs/connect/blob/master/lib/proto. js), где реализованы 'use' и' handle'. – robertklep

ответ

1

Промежуточное «цепь» на самом деле просто «стек», который на самом деле простой Javascript Массив функций для выполнения в порядке. Всякий раз, когда вы вызываете use, соединение добавляет вашу функцию в стек промежуточного программного обеспечения. Когда пришло время запуска промежуточного программного обеспечения, соединение просто выполняет все функции, чтобы бит логики передавал параметры req, res, next и подключал обратный вызов next для продолжения обработки стека промежуточного программного обеспечения. Я согласен с @robertklep в том, что вы должны прочитать исходный код, поскольку он вполне читабелен и освещен.