express 路由问题
本人新手, 刚刚接触node.js
和express
框架, 按照网上教程配置了一下路由但是出现了一点问题, 如下:
首先文件结构如下:
主文件index.js
代码如下:
const express = require('express')
const app = express()
const indexRouter = require('./routes/index')
const userRouter = require('./routes/about')
app.use('/', indexRouter.router)
app.use('/about', userRouter.router)
app.listen(3000, () => {
console.log('App listening on port 3000!')
})
routes/index.js
如下:
const express = require('express')
const router = express.Router()
router.get('/', (req, res) => {
res.send('home')
})
module.exports = {
router: router
}
routes/about.js
如下:
const express = require('express')
const router = express.Router()
router.get('/about', (req, res) => {
res.send('about')
})
module.exports = {
router: router
}
其他配置文件都是没问题的, 但是运行服务器的时候, localhost:3000/about
页面一直报错, 而localhost:3000/
确实正常的, 如下:
自己试着解决了一下, 如果将routes/index.js
和routes/about.js
文件都写到index.js
文件里面(不用模块导出), 那么about
页面时可以正常响应的, 但是放到不同的模块里面就不行.
本人刚刚接触这方面, 也不是很懂问题到底出在哪里, 希望能有前辈指导一下, 谢谢!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
你在 about.js 里改成
试试
看你的代码,about的正确路径应该是
http://localhost:3000/about/about
吧