我确信这很容易,但我不能为我的生活弄清楚为什么这不起作用。
因此,尝试编写一个用户可以搜索的应用程序,获取一个链接,如果计时它调用第二个路径,则传递一个变量。听起来很简单,所以我想。
这个想法是生成的每个链接都有一个像“localhost:3000 / getcan /:[id]”这样的链接 因此,对于我们的示例,如果我尝试转到网页,我试图将22变为变量
"localhost:3000/getcan/:22"
要设置路线,我在app.js
中设置了以下内容app.use('/getcan/:*', getcan);
这似乎有用,如果我把任何调用/ getcan /:我去了正确的路线。
它自己的路线如下
var express = require('express');
var router = express.Router();
/* GET getcan page. */
router.get('/', function(req, res, next) {
var canid = req.params.canid;
console.log("Got the following id " + canid)
res.render('getcan', { title: 'ResourceEdge', reqcan: canid });
});
module.exports = router;
我认为问题出在router.get('/'
但是如果我做了任何更改(尝试使用get('/ getcan /:canid),那么所有这些都会因404而爆炸。
任何指针?
答案 0 :(得分:1)
将app.use更改为:
app.use('/getcan', getcan);
你的路由器:
/* GET getcan page. */
router.get('/:canid', function(req, res, next) {
var canid = req.params.canid;
console.log("Got the following id " + canid)
res.render('getcan', { title: 'ResourceEdge', reqcan: canid });
});
调用您的路线