为什么子域无法使用 express.js?
Why the subdomains are not working with express.js?
所以我在本地进行试验,它在我的主机文件中
127.0.0.1 example.dev
127.0.0.1 www.example.dev
127.0.0.1 api.example.dev
这是我的代码:
var subdomain = require('express-subdomain');
var express = require('express');
var app = express();
var router = express.Router();
// example.com
app.get('/', function(req, res) {
res.send('Homepage');
});
//api specific routes
router.get('/', function(req, res) {
res.send('Welcome to our API!');
});
router.get('/users', function(req, res) {
res.json([
{ name: "Brian" }
]);
});
app.use(subdomain('api', router));
app.listen(3000);
基本上就是包网站的例子
api.example.dev/users 效果很好,但是当我转到 api.example.dev 时,内容与 example.dev 上的内容相同(就像它被覆盖了一样)
任何想法我做错了什么?
谢谢
这是一个请求处理顺序问题。将主域请求处理程序的声明移到子域之后:
var subdomain = require('express-subdomain');
var express = require('express');
var app = express();
var router = express.Router();
//api specific routes
router.get('/', function(req, res) {
res.send('Welcome to our API!');
});
router.get('/users', function(req, res) {
res.json([
{ name: "Brian" }
]);
});
app.use(subdomain('api', router));
// example.com
app.get('/', function(req, res) {
res.send('Homepage');
});
app.listen(3000);
所以我在本地进行试验,它在我的主机文件中
127.0.0.1 example.dev
127.0.0.1 www.example.dev
127.0.0.1 api.example.dev
这是我的代码:
var subdomain = require('express-subdomain');
var express = require('express');
var app = express();
var router = express.Router();
// example.com
app.get('/', function(req, res) {
res.send('Homepage');
});
//api specific routes
router.get('/', function(req, res) {
res.send('Welcome to our API!');
});
router.get('/users', function(req, res) {
res.json([
{ name: "Brian" }
]);
});
app.use(subdomain('api', router));
app.listen(3000);
基本上就是包网站的例子 api.example.dev/users 效果很好,但是当我转到 api.example.dev 时,内容与 example.dev 上的内容相同(就像它被覆盖了一样) 任何想法我做错了什么? 谢谢
这是一个请求处理顺序问题。将主域请求处理程序的声明移到子域之后:
var subdomain = require('express-subdomain');
var express = require('express');
var app = express();
var router = express.Router();
//api specific routes
router.get('/', function(req, res) {
res.send('Welcome to our API!');
});
router.get('/users', function(req, res) {
res.json([
{ name: "Brian" }
]);
});
app.use(subdomain('api', router));
// example.com
app.get('/', function(req, res) {
res.send('Homepage');
});
app.listen(3000);