app.get()函数的node.js问题

时间:2015-09-30 13:10:09

标签: javascript node.js

我正在尝试创建一个使用mongojs的网站。 我尝试使用下面的代码,但是一旦我运行该网站,它就永远不会进入app.get()部分,并且该网站最终显示500错误。 如何让它响应app.get功能?

感谢您的帮助!



var express = require('express');
var cookieParser = require('cookie-parser');
var session = require('express-session');

require('node-monkey').start({host: "127.0.0.1", port:"50500"}); //TODO: Delete

var app = express();
var mongojs = require('mongojs');
var db = mongojs('mongodb://localhost:27017/test', ['usersData']);
var usersData = db.collection('usersData');

app.use(express.static(__dirname + '/views'));
app.use(cookieParser());
app.use(session({
    secret: 'keys',
    resave: true,
    saveUninitialized: true
}));
app.get('/', function (req, res) {
    console.log("here");
});




2 个答案:

答案 0 :(得分:2)

你必须开始听。只需添加以下行:

  app.listen(port);

答案 1 :(得分:0)

有几个原因导致您的案件出现500错误:

  • 确保您启动了一个mongod实例(在终端中)
  • 在执行var app = express()之前尝试要求所有依赖项(之后的行应该向上移动)
  • 主机URL,端口,身份验证和数据库名称是否有效?
  • 您的app.js结构不完整。使用ExpressJS时,应用程序必须使用某个骨架。

    // Dependencies
    var express = require('express');
    var cookieParser = require('cookie-parser');
    var session = require('express-session');
    var mongojs = require('mongojs');
    // DB
    var db = mongojs('mongodb://localhost:27017/test', ['usersData']);
    var usersData = db.collection('usersData');
    // Start app
    var app = express();
    app.configure(function() {
      app.set('port', process.env.PORT || 3000);
      app.set('views', __dirname + '/views');
      app.set('view engine', 'jade');
      app.use(express.static(__dirname + '/views'));
      app.use(cookieParser());
      app.use(session({
          secret: 'keys',
          resave: true,
          saveUninitialized: true
      }));
      // etc...
    })
    // Routes
    app.get('/', function (req, res) {
        console.log("here");
    });
    // App listen
    app.listen(3000);