app.jsエクスプレスルートが認識されません。で応答すること
var express = require("express");
var app = express();
var path = require('path');
var db = require('./db');
var bodyParser = require('body-parser');
app.listen(80);
app.set('view engine', 'jade');
app.set('views', "./views");
// app.get('/', _GetMainPage);
// app.get('/sites', _GetSites);
app.use(express.static(path.join(__dirname, 'public')));
app.use(bodyParser.urlencoded({ extended: true })); // Support encoded bodies
app.use(bodyParser.json()); // Support json encoded bodies
app.use(require('./controllers'));
./controllers/index.js
var express = require('express');
var router = express.Router();
router.use('/', require('./sites'));
router.use('/site', require('./site'));
module.exports = router;
./controllers/sites.js
var express = require('express');
var router = express.Router();
var site = require('../models/site');
router.get('/', function(req, res) {
site.getAll(function(err, rows){
if(err) {
res.send(err);
return;
}
res.render('sites', { sites : rows });
});
});
'を取得することはできません'
./c私はローカルホスト/サイトを要求するとontrollers/site.js
var express = require('express');
var router = express.Router();
var site = require('../models/site');
router.get('/site', function(req, res) {
// console.log("get /site received. req.body: " + req.body);
res.render('site', {
site: {
name : req.params.name
}
});
});
module.exports = router;
は、私が言って応答を取得:
/サイトに完全に
はlocalhost/作品
を取得することはできません私はこれをawまだ問題を見つけることができません。私が追加できるものがあれば教えてください。ありがとう。
/site/siteに移動するとどうなりますか?あなたのsite.jsルートは、あなたが使用中に提供したルートからの相対パスです。だから、 'router.get( '/' ...' router.get( '/ site' ... ' –
ではありません。 –