有没有办法使用快速路由器来获取子域的变量。
假设我有foo.example.com
如何获得foo
的输出。
由于
答案 0 :(得分:4)
在Express 4.x中,您可以使用req.subdomains
属性。
// Host: "tobi.ferrets.example.com"
req.subdomains
// => ["ferrets", "tobi"]
答案 1 :(得分:2)
Express 4.x来req.subdomains但是如果您使用的是旧版本或想要播放自己的代码,那么可以使用其他框架,然后您可能会喜欢
var app = express();
app.use(function(req, res, next) {
var host = req.get('host');
console.log(getSubdomain(host));
console.log(getSubdomainList(host));
next();
})
function getSubdomain(host) {
var subdomain = host ? host.substring(0, host.lastIndexOf('.')) : null;
return subdomain;
}
function getSubdomainList(host) {
var subdomainList = host ? host.split('.') : null;
if(subdomainList)
subdomainList.splice(-1, 1);
return subdomainList;
}