我需要一个节点中间件,它可以告诉手机我的应用程序是一个专属门户,所有请求都会根据iptables规则重定向到node(Express)服务器ip,该应用程序运行良好,但手机浏览器无法在连接时启动,我认为接近这一点,但它不起作用:
app.use((req, res, next) => {
let sites = [
'localhost:3000',
'localhost',
'10.0.0.1:3000',
'10.0.0.1',
'127.0.0.1',
'127.0.0.1:3000'
];
if (sites.indexOf(req.get('host')) === -1) {
res.redirect(302, '10.0.0.1');
}
});
我调试了它,并捕获了对"clients3.google.com/generate_204"等网站的请求,并发送了重定向响应,所以我认为这是关于标头或重定向代码的内容,但。。。
或者还有其他方法可以轻松做到这一点(使用IPtables或/etc/resolv.conf…)?
您不能强制设备打开浏览器。并非所有设备都能做到这一点。。。并不是所有的设备都能检测到捕获门户的问题。