我能够使用node index.js
// index.js
const express = require('express')
const app = express()
const port = 3000
app.get('/', (req, res) => res.send('Hello World!'))
app.listen(port, () => console.log(`Example app listening on port ${port}!`))
因此,如果我按下localhost:3000,我将在浏览器中以 Hello World 的形式获得响应。
是否可以在localhost:3000 / app中访问该应用程序并获得相同的响应?
我正在尝试将应用程序基本URL作为localhost:3000 / app
代码中应进行的更改?
我不是问正确吗?
任何帮助表示赞赏
答案 0 :(得分:3)
您绝对必须使用一个明确的Router
对象。然后,在此示例中,您将必须将所有路由放置在名为appBase
的路由器主机下:
const express = require('express')
const app = express()
const port = 3000
var appBase = express.Router();
app.use('/app', appBase);
appBase.get('/', function (req, res) {
console.log(req.baseUrl); // /app
res.send('Hello world!');
});
app.listen(port, () => console.log(`Example app listening on port ${port}!`))
一切都在官方快递文档中得到了充分解释:http://expressjs.com/en/api.html#req.baseUrl
答案 1 :(得分:0)
那呢:
const express = require('express')
const app = express()
const port = 3000
const handler = (req, res) => {
res.send('Hello World!')
};
app.get('/', handler)
app.get('/app', handler)
app.listen(port, () => console.log(`Example app listening on port ${port}!`))