2015-09-30 133 views
0

我试图创建一个使用mongojs的网站。 我试图使用下面的代码,但一旦我运行该网站,它永远不会进入app.get()部件,并且该网站最终显示500错误。 如何让它响应app.get函数?node.js 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"); 
 
});

+0

那一行并在500抛出? – zero298

+0

它不会说,该网站试图加载,然后我得到以下错误: iisnode处理请求时遇到错误。 HRESULT:0x2 HTTP状态:500 HTTP原因:内部服务器错误 – Vera

回答

2

你必须要听。只需添加下面一行:

app.listen(port); 
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);