【发布时间】:2016-06-02 03:28:54
【问题描述】:
我有一个在 Express v4 上使用 MongoDB + Mongoose 的应用程序。我相信我已经成功连接了我的数据库,但是当我在 Postman 上测试连接时,我的 GET 请求返回了 404 错误。
有人能在我的代码中发现错误吗?
服务器.js
...
var mongo = require('mongodb');
var mongoose = require('mongoose');
require('./models/Thread');
require('./routes/thread');
mongoose.connect('mongodb://localhost:27017/pudo');
var app = express();
var router = express.Router();
...
/models/Thread.js
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var ThreadSchema = new mongoose.Schema({
name: String
});
var Thread = mongoose.model('Thread', ThreadSchema);
module.exports = Thread;
/routes/thread.js
var express = require('express');
var router = express.Router();
var mongoose = require('mongoose');
var Thread = mongoose.model('Thread');
router.get('/threads', function(req, res, next){
Thread.find(function(err, threads){
if(err){return next(err);}
res.json(threads);
});
});
module.exports = router;
我相信这是我的代码之间的最小连接,以便它工作。但是,向 /threads 发送 GET 会返回 404 错误,而不是任何数据库记录。
【问题讨论】:
-
如果mongodb连接正常,请检查您代码中使用的url...
-
你指的是这个网址
mongoose.connect('mongodb://localhost:27017/pudo');吗?没错 -
不,网址
get /threads,请查看app.listen()中的ip地址和端口列表...
标签: mongodb express mongoose models mean-stack