我的请求标头包含Authorization
等数据。我试图从发出通知的事件中得到它。
我通常会访问标题:var auth = req.get('Authorization');
但需要通过该代码无法从没有req
的模型事件中访问它。
那么有什么方法可以实现这样的目标?
根据评论推荐更新。
从技术上讲,我有一个像:
这样的控制器app.get('/', function(req, res) {
req.get('Authorization');
// save some model data
});
现在我有一个有onSaving
事件的模型。当模型发出事件时。我运行了一些代码。
此代码需要Authorization
标头,但我无法从任何地方获取它,因为它仅在req
上可用。该模型是另一个文件,我正在使用ORM进行MYSQL。
答案 0 :(得分:1)
你没有关于你的问题的详细信息,但这可能就是答案:
var events = require('events');
var eventEmitter = new events.EventEmitter();
eventEmitter.on('auth', function( params ){
var req = params.req,
res = params.res,
auth = params.auth;
// Do something with auth or req/res here...
});
app.get('/', function(req, res) {
var auth = req.get('Authorization');
// save some model data
eventEmitter.emit('auth', {
req: req,
req: res,
auth: auth
});
});