是否可以将不同的ip过滤器应用于不同的路由?特定路由的Express IP过滤器?
例如,我想从123.123.123.123只有人可以访问我的服务器的/test
路线,并从124.124.124.124只有人可以访问我的服务器的/
路线。
我知道express-ipfilter可以通过IP地址限制站点访问。但它不能将过滤器应用于特定路线。
我也知道,在路线中间增加app.use(ipfilter(ips, {}));
可以应用过滤器只以下路线:
var express = require('express'),
ipfilter = require('express-ipfilter').IpFilter;
var ips = ['::ffff:127.0.0.1'];
var app = express();
app.get('/test', function(req, res) {
res.send('test');
});
app.use(ipfilter(ips, {})); // the ipfilter only applies to the routes below
app.get('/', function(req, res) {
res.send('Hello World');
});
app.listen(3000);
但我要为不同的路线不同的过滤器。
可以做到这一点吗?
+1如果你需要实现它在几个甚至可以写出一个干净实现中间件功能路线。 –