2017-03-03 5 views
0

私は、検索/検索の際にExpress node.jsアプリケーションが読み込まれないのはなぜですか?私は正しいポートにいるので、なぜロードしないのか困惑している。 404エラーメッセージが表示されます。私は以下に問題がある部分を強調しました。私のルートがnode.jsにロードされないのはなぜですか?

var app = express(); 

// view engine setup 
app.set('views', path.join(__dirname, 'views')); 
app.set('view engine', 'jade'); 

// uncomment after placing your favicon in /public 
//app.use(favicon(path.join(__dirname, 'public', 'favicon.ico'))); 
app.use(logger('dev')); 
app.use(bodyParser.json()); 
app.use(bodyParser.urlencoded({ extended: false })); 
app.use(cookieParser()); 
app.use(express.static(path.join(__dirname, 'public'))); 

app.use('/', index); 
app.use('/users', users); 

// catch 404 and forward to error handler 
app.use(function(req, res, next) { 
var err = new Error('Not Found'); 
err.status = 404; 
next(err); 
}); 

app.get('/', function(req, res) {res.render('index')}); 
**app.get('/searching', function(req, res){ 
res.send("WHEEE"); 
});** 

    // error handler 
    app.use(function(err, req, res, next) { 
// set locals, only providing error in development 
res.locals.message = err.message; 
res.locals.error = req.app.get('env') === 'development' ? err : {}; 

// render the error page 
res.status(err.status || 500); 
res.render('error'); 
}); 

module.exports = app; 
app.listen(8020); 

答えて

0

this Express FAQによると、あなたは他のすべての機能を実行した後、一番下にあなたの404ハンドラを配置する必要があります。

このように機能を下げてください。

var app = express(); 

// view engine setup 
app.set('views', path.join(__dirname, 'views')); 
app.set('view engine', 'jade'); 

// uncomment after placing your favicon in /public 
//app.use(favicon(path.join(__dirname, 'public', 'favicon.ico'))); 
app.use(logger('dev')); 
app.use(bodyParser.json()); 
app.use(bodyParser.urlencoded({ 
    extended: false 
})); 
app.use(cookieParser()); 
app.use(express.static(path.join(__dirname, 'public'))); 

app.use('/', index); 
app.use('/users', users); 



app.get('/', function(req, res) { 
    res.render('index') 
}); * * app.get('/searching', function(req, res) { 
    res.send("WHEEE"); 
}); * * 

// error handler 
app.use(function(err, req, res, next) { 
    // set locals, only providing error in development 
    res.locals.message = err.message; 
    res.locals.error = req.app.get('env') === 'development' ? err : {}; 

    // render the error page 
    res.status(err.status || 500); 
    res.render('error'); 
}); 

// catch 404 and forward to error handler 
app.use(function(req, res, next) { 
    var err = new Error('Not Found'); 
    err.status = 404; 
    next(err); 
}); 

module.exports = app; 
app.listen(8020); 
関連する問題