无法在nodejs中获取/index



我写了一个名为"app.js"的服务器,它显示了我网站的许多页面。

var http=require("http");
var express = require('express');
var app = express();
var server = http.createServer(app);
var ejs = require('ejs');
var path = require('path');
var passport = require('passport');
var LocalStrategy = require('passport-local').Strategy;
    // routes
var route = require('./route');

app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'ejs');
server.listen(3000,function(){
console.log("server listen at localhost:3000");});
app.get('/', route.index);

路线.js:

var index = function(req, res, next) {
   if(!req.isAuthenticated()) {
      res.redirect('/index');
   } else {
      var user = req.user;
      if(user !== undefined) {
         user = user.toJSON();
      }
      res.render('menu', {title: 'Home', user: user});
   }
};
module.exports.index = index;

项目的文件夹:

/interface
      /views
            index.ejs
      app.js
      route.js

我该如何解决它? 我的程序中有什么错误?

server.listen后无法访问您的app.get

将其放在以下位置:

应用.js:

var http=require("http");
var express = require('express');
var app = express();
var server = http.createServer(app);
var ejs = require('ejs');
var path = require('path');
var passport = require('passport');
var LocalStrategy = require('passport-local').Strategy;
    // routes
var route = require('./route');

app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'ejs');
// here:
app.get('/', route.index); 
server.listen(3000,function(){
console.log("server listen at localhost:3000");});
// app.get('/', route.index); <= not here

未经身份验证时,重定向不是您想要的,而是:

路线.js:

// res.redirect('/index');
res.render('index');

最新更新