尝试路由到索引与mongodb和nodejs时404(未找到)
问题描述:
我正在为作为某种视频游戏伴侣工作的投资组合的应用程序工作,但我似乎无法让它连接到mongo服务器。尝试路由到索引与mongodb和nodejs时404(未找到)
我的代码似乎正常工作,因为它说,当我在节点中运行server.js时连接成功,因为这是我的终端所说的。
(节点:45137)DeprecationWarning:
open()
已被弃用在猫鼬> => 4.11.0,使用openUri()
代替,或使用设置或connect()
的createConnection()
选项useMongoClient
如果>。请参阅http://mongoosejs.com> /docs/connections.html#use-mongo-client App在端口27017上运行! 猫鼬连接成功。
但是当我尝试把它放在本地主机失败
GET http://localhost:27017/ 404(未找到)
这是它里面的路线我的服务器代码。
我已经仔细检查过,以确保所有需要的样式和JavaScript都链接正确,但仍然没有好处。
// Dependencies
var express = require("express");
var bodyParser = require("body-parser");
var mongoose = require("mongoose");
var exphbs = require("express-handlebars");
var request = require("request");
// Set mongoose to leverage built in JavaScript ES6 Promises
mongoose.Promise = Promise;
// Initialize Express
var app = express();
// Use morgan and body parser with our app
app.use(bodyParser.urlencoded({
extended: false
}));
// Make public a static dir
app.use(express.static(__dirname + "/public"));
app.engine("handlebars", exphbs({ defaultLayout: "main" }));
app.set("view engine", "handlebars");
// Database configuration with mongoose
mongoose.connect("mongodb://localhost/usersdb");
var db = mongoose.connection;
// Show any mongoose errors
db.on("error", function(error) {
console.log("Mongoose Error: ", error);
});
// Once logged in to the db through mongoose, log a success message
db.once("open", function() {
console.log("Mongoose connection successful.");
});
//routes
app.get('/', function(req, res, next, error){
\t // Log any errors
if (error) {
console.log(error);
}
// Or send the doc to the browser as a json object
else {
res.render("index",{ title: 'Express' });
}
});
// Listen on port 27107
app.listen(process.env.PORT || 27017, function() {
console.log("App running on port 27017!");
});
任何想法?
答
您已设置为路由器的处理程序错误的签名,而不是app.get('/', function(req, res, next, error){
,你需要使用app.get('/', function(req, res, next){
,没有error
PARAM,而如果发生应在首位,而错误PARAM发生时,这个处理器将是一个错误的中间件。
这是问题!非常感谢! –