我开始使用带有express的nodejs进行编码。 所以我在我的文件test.js中做了这个,这是我的文件夹路由:
const express = require('express');
const router = new express.Router();
router.get('/test', (req, res) => {
res.send(`I'm a test`);
});
module.exports = router;
然后,在我的server.js:
const test = require('./server/routes/test');
app.use('/test', test);
在我的浏览器中,它告诉我无法获取/测试
我不明白为什么。需要帮助。 感谢
答案 0 :(得分:0)
在"I'm a test"
内添加res.send()
,我的意思是在该字符串周围添加"
。
答案 1 :(得分:0)
要访问/test
,请使用router.get('/'
和app.use('/test'
因为express会连接/
和/test
。
在您的情况下,您必须访问/test/test
,请执行此操作并在您的borwser中输入/test
:
const express = require('express');
const router = new express.Router();
router.get('/', (req, res) => { res.send("I'm a test"); });
module.exports = router;
然后,在你的server.js中:
const test = require('./server/routes/test'); app.use('/test', test);
答案 2 :(得分:0)
问题似乎是你如何安装路由器。看router middleware API看起来你应该这样做。
test.js
const express = require('express');
const router = new express.Router();
router.get('/test', (req, res, next) => {
res.send("I'm a test");
next();
});
module.exports = router;
server.js
const express = require('express');
const app = express();
const test = require('./test');
app.use('/', test);
app.listen(3000);
答案 3 :(得分:0)
可以解决您的问题的简单修复。
替换
const router = new express.Router();
用
const router = express.Router();