如何为移动设备路由相同的路径; Node.js Express中的PC

时间:2014-09-24 23:50:29

标签: javascript node.js mobile router

我想在快递中进行移动检测,使移动和PC模块完全独立,但保持URL相同,这意味着我无法将路径重定向到/ mobile / ...只是因为请求来自移动设备

以下是app.js中的内容:

app.use(function(req, res){
    var ua = req.header('user-agent');
    if(/mobile/i.test(ua)) {
        console.log('user agent is mobile');
        mobileRouter.set(app);
    } else{
        console.log('user agent is pc');
        pcRouter.set(app);
    }
})

在pcRouter.js中:

var index = require('./pc/index');
var user = require('./pc/user');
var auth = require('./pc/auth');

module.exports.set = function(app) {
    console.log('define pc router');
    app.use('/', index);
    app.use('/user',  user);
    app.use('/auth', auth);
}

在pc / index.js中:

var express = require('express');
var router = express.Router();

/* GET home page. */
router.get('/', function(req, res) {
    console.log('pc index');
    res.render('index', { title: 'PC' });
});

module.exports = router;

当我请求主页时,终端只显示这两个日志: '用户代理是pc'和 'define pc router'

pc / index.js没有被执行,我想这是因为路由器必须在app.js已经启动时定义,但我怎么能意识到我之前所说的:

用户代理检测相同的URL路由,并保留移动子应用程序& pc子应用程序完全独立

0 个答案:

没有答案