Node.js 现有数据库中的Mongoose节点API未返回结果且未显示任何错误

Node.js 现有数据库中的Mongoose节点API未返回结果且未显示任何错误,node.js,mongodb,api,express,mongoose,Node.js,Mongodb,Api,Express,Mongoose,我不熟悉基于nodeJS的api,我想连接到MongoDB数据库中已经存在的集合。 如果我尝试访问http://localhost:8080/teams我在浏览器上遇到一个错误:无法获取/Teams。 即使是console.log也没有打印出来,但是nodemon(每次保存后我用来加载)没有显示错误 这是现有记录的一个示例: use MYDB db.TeamsCol.find() { "_id" : ObjectId("5d702df59ba60607dad06df4"), "teamID" :

我不熟悉基于nodeJS的api,我想连接到MongoDB数据库中已经存在的集合。 如果我尝试访问
http://localhost:8080/teams
我在浏览器上遇到一个错误:无法获取/Teams。 即使是
console.log
也没有打印出来,但是nodemon(每次保存后我用来加载)没有显示错误

这是现有记录的一个示例:

use MYDB
db.TeamsCol.find()
{ "_id" : ObjectId("5d702df59ba60607dad06df4"), "teamID" : 1, "teamName" : "PT", "datetime" : "04-09-2019 10:21:16 Wednesday" }
{ "_id" : ObjectId("5d702ed59ba60607dad06df5"), "teamID" : 2, "teamName" : "ES", "datetime" : "01-09-2019 11:20:00 Sunday" }
我建造了以下结构:

project folder: API

API/server.js 
API/models/teamModel.js
API/Routes/teamRouter.js
如下所述:

API/server.js文件:

// Import express
let express = require('express');
// Import Body parser
let bodyParser = require('body-parser');
// Import Mongoose
let mongoose = require('mongoose');

// Initialise the app
let app = express();

// Setup server port
var port = process.env.PORT || 8080;

// Import routes
let apiRouter = require("./Routes/teamRouter");

// Connecting to the database
const db = mongoose.connect('mongodb://localhost/MYDB', {useNewUrlParser: true});

// setting body parser middleware 
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));

// API routes
app.use('/Teams', apiRouter);

// Running the server
app.listen(port, () => {
console.log(`http://localhost:${port}`)
})
// Import express
let express = require('express');
// Import Teams controller
var Team = require('../models/teamModel');

const teamRouter = express.Router();

teamRouter.route('/teams')
.get((req, res) => {
    Console.log(req)
    Team.find({}, (err, teams) => {
        res.json(teams)
    })  
})

// Middleware 
teamRouter.use('/:team', (req, res, next)=>{
Team.findById( req.params.team, (err,team)=>{
    if(err)
        res.status(500).send(err)
    else {
        req.team = team;
        next()
    }
})

})
teamRouter.route('/:team')
.get((req, res) => {
    res.json(req.team)
}) // end get Teams/:team 

// Export API routes
module.exports = teamRouter;
API/models/teamModel.js文件:

// Import Mongoose
let mongoose = require('mongoose');

const Schema = mongoose.Schema;
const teamModel = new Schema({
    teamID: { type: Number   },
    teamName: { type: String },
    datetime: { type: String },
})

module.exports = mongoose.model('teamsModel', teamModel, 'TeamsCol');
API/Routes/teamRouter.js文件:

// Import express
let express = require('express');
// Import Body parser
let bodyParser = require('body-parser');
// Import Mongoose
let mongoose = require('mongoose');

// Initialise the app
let app = express();

// Setup server port
var port = process.env.PORT || 8080;

// Import routes
let apiRouter = require("./Routes/teamRouter");

// Connecting to the database
const db = mongoose.connect('mongodb://localhost/MYDB', {useNewUrlParser: true});

// setting body parser middleware 
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));

// API routes
app.use('/Teams', apiRouter);

// Running the server
app.listen(port, () => {
console.log(`http://localhost:${port}`)
})
// Import express
let express = require('express');
// Import Teams controller
var Team = require('../models/teamModel');

const teamRouter = express.Router();

teamRouter.route('/teams')
.get((req, res) => {
    Console.log(req)
    Team.find({}, (err, teams) => {
        res.json(teams)
    })  
})

// Middleware 
teamRouter.use('/:team', (req, res, next)=>{
Team.findById( req.params.team, (err,team)=>{
    if(err)
        res.status(500).send(err)
    else {
        req.team = team;
        next()
    }
})

})
teamRouter.route('/:team')
.get((req, res) => {
    res.json(req.team)
}) // end get Teams/:team 

// Export API routes
module.exports = teamRouter;
以下是我正在使用的版本

mongo --version
MongoDB shell version v3.6.3

node --version
v8.9.4
以及package.json内容:

{
"name": "teamsapi",
"version": "1.0.0",
"description": "",
"main": "server.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"dependencies": {
"body-parser": "^1.19.0",
"express": "^4.17.1",
"mongoose": "^5.6.12"
}
}

有什么想法吗?

因为在您的
server.js
文件中,您已经使用了:

app.use('/Teams', apiRouter);
因此api
/teams
不存在,它应该是
/teams/teams
。完整的url将是
http://localhost:8080/Teams/teams