Node.js 阻止监控应用程序在expressJS/NodeJS中创建会话

Node.js 阻止监控应用程序在expressJS/NodeJS中创建会话,node.js,express,Node.js,Express,我正在使用一个监控应用程序,它向我的节点应用程序发送HTTP请求。我可以通过req.headers['user-agent']使用用户代理过滤掉这些监控HTTP请求。我在express中使用的会话如下使用express会话: app.use(express.session({ secret: 'adadafadgdgfgd34', cookie: {maxAge: new Date(Date.now() + 3600000)}, store: new (require('express-sess

我正在使用一个监控应用程序,它向我的节点应用程序发送HTTP请求。我可以通过req.headers['user-agent']使用用户代理过滤掉这些监控HTTP请求。我在express中使用的会话如下使用express会话:

app.use(express.session({ secret: 'adadafadgdgfgd34', cookie: {maxAge: new Date(Date.now() + 3600000)}, store: new (require('express-sessions'))({
storage: 'redis', instance: redisConnection, collection:'sessions', expire: 3600000 }) }));

除非我弄错了,否则一旦中间件被命中,就会生成session&sessionID。我正在考虑将代码放在中间件调用之前,以拦截/检查用户代理,并且仅当它是常规用户代理时才调用此会话代码,即不是来自带有非标准用户代理的自动监视器,尽管我不认为我可以在那里使用req.headers调用。是否有其他方法可以更好地处理此场景,或者我可以使用模块/库?最终目标是避免存储监控服务器HTTP请求,使其在每次点击我的应用程序时生成新会话,并避免将其存储在redis中。如果可能,我宁愿不更改监控服务器。

只是为了清除第一次点击请求时生成会话的内容。后续请求不会生成会话,因为在用户上设置了cookie。如果用户清除cookie或不使用cookie,则只会再次生成cookie。是的,我知道-监控应用程序不使用cookie,因此会生成一个会话,我试图阻止该会话,但希望为普通用户生成一个会话。更好/更干净的方法是在您的请求中发送一些独特的内容,可以是头、cookie或主体,并在中间件链中尽早检测它。否则,使用像这里这样的特殊路线