qod*_*nja 36 middleware node.js express
这可能不是我的正确方法,但我想有条件地将一个对象/参数添加到appexpressJS/connectjS中间件调用内的变量中.
由于此功能是回调,app从中间件调用中访问的标准/最佳方式是什么?
//app.js
var myMiddleware = require('./lib/mymiddleware.js');
...
app.configure( function(){
app.use( myMiddleware.func() );
...
}
if( 'object' !== typeof app.myObject ){
cry( 'about it' );
}
//mymiddleware.js
module.exports.func = function( ){
return function( req, res, next ){
//append app object
//app.myObject = {}
next();
}
};
Run Code Online (Sandbox Code Playgroud)
注意,这不是用于locals或settings稍后呈现的内容,而是稍后将在执行链中的路由和套接字中使用的内容.
Mor*_*len 10
通常我会做以下事情.
var myMiddleware = require('./lib/mymiddleware.js')(app);
...
app.configure( function(){
app.use( myMiddleware );
...
}
Run Code Online (Sandbox Code Playgroud)
中间件看起来像这样......
module.exports = function(app) {
app.doStuff.blah()
return function(req, res, next) {
// actual middleware
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14237 次 |
| 最近记录: |