快速检测请求是否来自子域?

时间:2015-02-27 21:01:41

标签: node.js express routing routes

我正在使用npm子域,为了保持路由清洁,我想做类似的事情。

router.get('/login_success',function(req,res) {

  if(req.subdomain) {
    res.redirect('/');
  } else {
    res.sendStatus(200);
  } 

});

在上面,如果用户通过子域登录应用程序,我会重定向到呈现配置文件的子域根。

如果用户通过非子域路由登录,则使用ajax呈现视图,因此我需要发送200状态,说明用户有效。

我认为每个人都有两个单独的回调路线,这样会更加干净。

所以我的问题是,有没有办法检测req是来自子域还是常规域。

我知道有req.headers.origin,但我想知道是否有更相对的方式,所以当在本地和制作之间来回走动时,我不必改变它。

1 个答案:

答案 0 :(得分:17)

使用req.subdomains,这将为您提供网址中使用的子域列表。 Here's我从中获取了信息。