我真的不明白为什么node(express)只渲染索引页面并为其他页面返回404(示例中为“comproAffitto”)。
app.js
var index = require('./routes/index');
var comproAffitto= require ('./routes/comproAffitto');
...
...
app.use('/', index);
app.use('/comproAffitto', comproAffitto);
路由/ index.js
var express = require('express');
var router = express.Router();
/* GET home page. */
router.get('/', function(req, res, next) {
res.render('index', { title: 'Express' });
});
module.exports = router;
路由/ comproAffitto.js
var express = require('express');
var router = express.Router();
/* GET comproAffitto page. */
router.get('/comproAffitto', function(req, res, next) {
console.log("dentro");
res.render('comproAffitto', { title: 'Exprrress' });
});
module.exports = router;
html href
<a href="/comproAffitto/" class ....
控制台日志
GET /comproAffitto/ 404
问题出在哪里?
谢谢大家
答案 0 :(得分:0)
您正在构建路径两次:/comproAffitto/comproAffitto
。
您应该删除其中一个或此处:
app.use('/', comproAffitto);
或那里:
路由/ comproAffitto.js
var express = require('express');
var router = express.Router();
/* GET comproAffitto page. */
router.get('/', function(req, res, next) {
console.log("dentro");
res.render('comproAffitto', { title: 'Exprrress' });
});
module.exports = router;
离开app.use('/comproAffitto', comproAffitto);
答案 1 :(得分:0)
您定义了/comproAffitto/comproAffitto
而不是/comproAffitto
你需要改变这个:
app.use('/comproAffitto', comproAffitto);
到此:
app.use('/', comproAffitto);
或者这个:
router.get('/comproAffitto', function(req, res, next) {
到此:
router.get('/', function(req, res, next) {