【问题标题】:NodeJS Routing issueNodeJS路由问题
【发布时间】:2016-04-06 05:48:32
【问题描述】:

如何将下面的 url 路由到 node.js 中的不同视图

http://admin.localhost:3000/users/customer/view

http://localhost:3000/users/customer/view

目前它走的是我设置的同一条路线

http://localhost:3000/users/customer/view

App.js

....

var users = require('./routes/users');
app.use('/users', users);

....

Users.js

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

/* GET users listing. */
router.get('/', function(req, res, next) {
  res.send('respond with a resource');
});

router.get('/Customer/Create', function(req, res, next) {
  res.render('customer', {});
});

router.get('/Customer/View', function(req, res, next) {
  res.render('customer', {});
});

router.get('/Employee/Create', function(req, res, next) {
  res.render('customer', {});
});

router.get('/Employee/View', function(req, res, next) {
  res.render('customer', {});
});

module.exports = router;

以及通过在 url admin.yoururl.com 之前添加 admin 来对您的 url 执行此类操作的术语是什么?

【问题讨论】:

标签: javascript node.js


【解决方案1】:

由于使用的是express,所以可以使用express中间件express-subdomain

该软件包甚至支持多级子域,例如 v1.api.domain.com。

您需要为每个子域创建一个路由器,然后使用该包将该路由器绑定到您的快速应用程序:

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));
app.listen(3000);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-05-14
    • 2021-03-08
    • 2023-04-04
    • 1970-01-01
    • 2017-03-26
    • 1970-01-01
    • 2018-09-30
    相关资源
    最近更新 更多