Промежуточное ПО уровня маршрутизатора не работает с экспресс-поддоменом, с обработкой запросов по порядку - PullRequest
0 голосов
/ 24 марта 2019

Промежуточное программное обеспечение уровня маршрутизатора не работает с экспресс-поддоменом: у меня есть два тестовых промежуточных программного обеспечения только с GET, который возвращает индекс для localhost -> index.ejs для api.localhost -> api / index.ejs

разница в том, что один возвращает "привет", а другой "привет API",

в момент тестирования в браузере, либо в api.localhost, либо в localhost, вид ответа одинаковдля localhost ".

Я пытался следовать порядку выполнения, как указано в этом вопросе, но он не работает для меня. Почему субдомены не работают с express.js?

Код:

Index.ejs ->

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

/* GET home page. */
router.get('/', function(req, res, next) {
  res.render('index', { title: 'hi' });
});

module.exports = router;

api / index.ejs

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

/* GET api page. */
router.get('/', function(req, res, next) {
  res.render('index', { title: 'hi api' });
});

module.exports = router;

app.js "сокращенный код, но в том же порядке"

var express = require('express');
var subdomain = require('express-subdomain');
var app = express();

var indexRouter = require('./routes/index');
var indexApi = require('./routes/api/index');

app.use(subdomain('api', indexApi));
app.use('/', indexRouter);

host

127.0.0.1       localhost
127.0.0.1       api.localhost
127.0.0.1       2.localhost
::1             localhost

Я хочу, чтобы промежуточное ПО работало с соответствующими доменамиили субдомены, как мне решить эту проблему?

...