Node.js express子域处理程序路由混淆

Node.js express子域处理程序路由混淆,node.js,express,subdomain,Node.js,Express,Subdomain,我试图让我的子域在express中与每一个不同的路由器一起工作,但它们混淆了 当我进入panel.localhost:3333/login时,我会看到登录页面。但是每当我要访问api.localhost:3333/login时,我都会看到相同的页面。。。我没有在de api路由器中定义登录路由。有人知道如何解决这个问题吗?:) 在我设置子域的地方,我向路由添加了一个:,这样它的参数express将被解析。因此,我删除了:,现在它开始工作了 @Pardeep发布的答案是OP解决问题的方法。 imp

我试图让我的子域在express中与每一个不同的路由器一起工作,但它们混淆了

当我进入panel.localhost:3333/login时,我会看到登录页面。但是每当我要访问api.localhost:3333/login时,我都会看到相同的页面。。。我没有在de api路由器中定义登录路由。有人知道如何解决这个问题吗?:)


在我设置子域的地方,我向路由添加了一个
,这样它的参数
express
将被解析。因此,我删除了
,现在它开始工作了

@Pardeep发布的答案是OP解决问题的方法。
import { renderer, listen, sessionConfiguration } from './server.express';
import { _static, scripts, modules, staticPages } from './server.static';
import { serverRegisterAPIs } from './server.apis';
import serverConfiguration from './server.configuration';

let express = require('express'),
    app = express(),
    mongoose = require('mongoose'),
    routerPanel = express.Router(),
    routerApi = express.Router();

serverConfiguration(app).then(function(configuration) {

    mongoose.connect(process.configuration.mongo.url);

    app.use( require('express-subdomain-handler')({ baseUrl: 'localhost', prefix: 'subdomain', logger: true }) );

    // configure the session to ....
    sessionConfiguration(app);
    // configure the renderer
    renderer(app);

    // hook up a few static calls to the server
    _static(routerPanel, express);
    scripts(routerPanel, express);
    modules(routerPanel, express);
    // register static files
    staticPages(routerPanel);

    // register api
    //serverRegisterAPIs(routerApi);


    routerApi.get('/', (req, res)=>{
        console.log("test");
    });
    //set subdomains
    app.use('/subdomain/:panel',routerPanel);
    app.use('/subdomain/:api', routerApi);

    // start listening
    listen(app);
});