Я внес несколько изменений в пример раздела «Разделяй и властвуй» в документах npm: https://www.npmjs.com/package/express-subdomain
const subdomain = require('express-subdomain');
const express = require('express');
const app = express();
var router = express.Router(); //main api router
var v1Routes = express.Router();
v1Routes.get('/test', function(req, res) {
res.send('API - version 1');
});
router.use(subdomain('api', v1Routes));
//basic routing..
router.get('/', function(req, res) {
res.send('Welcome to the API!');
});
//attach the api
app.use(subdomain('api', router));
app.listen(8000);
console.log("listening on 8000")
По сути, я избавился от маршрутов v2 и изменил поддомен на v1маршруты до api
.Я также избавился от промежуточного программного обеспечения и изменил маршрут v1 на /test
, чтобы отличить его от базовой маршрутизации.
Также мой файл / etc / hosts выглядит так:
127.0.0.1 myapp.dev
127.0.0.1 api.myapp.dev
255.255.255.255 broadcasthost
::1 localhost
Единственное, что я там сделал, это изменил localhost
на myapp.dev
и добавил api.myapp.dev
, который я нашел здесь: https://github.com/bmullan91/express-subdomain#developing-locally
Есть идеи?