Node.js 404来自我的节点服务器的错误
因此,我正在制作一个Ionic应用程序,我有一个连接到mongoose数据库的节点服务器,但是,我的节点服务器不断返回404错误。以下内容来自我的节点终端:Node.js 404来自我的节点服务器的错误,node.js,angular,ionic3,Node.js,Angular,Ionic3,因此,我正在制作一个Ionic应用程序,我有一个连接到mongoose数据库的节点服务器,但是,我的节点服务器不断返回404错误。以下内容来自我的节点终端: GET / 404 2.975 ms - 139 GET /favicon.ico 404 0.427 ms - 150 GET /api/courses 404 1.415 ms - 150 GET /api/courses 404 0.196 ms - 150 OPTIONS /api/courses 204 3.840 ms - 0
GET / 404 2.975 ms - 139
GET /favicon.ico 404 0.427 ms - 150
GET /api/courses 404 1.415 ms - 150
GET /api/courses 404 0.196 ms - 150
OPTIONS /api/courses 204 3.840 ms - 0
POST /api/courses 404 40.388 ms - 151
GET /api/courses 404 0.247 ms - 150
GET /api/courses 404 0.201 ms - 150
GET /api/courses 404 0.271 ms - 150
GET /api/courses 404 0.188 ms - 150
GET /api/courses 404 0.184 ms - 150
GET /api/courses 404 0.154 ms - 150
GET / 404 0.190 ms - 139
GET / 404 0.198 ms - 139
GET /api/courses 404 2.366 ms - 150
GET /api/courses 404 0.195 ms - 150
GET /api/courses 404 0.195 ms - 150
GET /api/courses 404 0.410 ms - 150
GET /api/courses 404 0.204 ms - 150
OPTIONS /api/courses 204 0.727 ms - 0
POST /api/courses 404 3.987 ms - 151
GET / 404 0.168 ms - 139
GET /api/courses 404 0.209 ms - 150
我不知道为什么会发生这种情况,这是我的服务器文件:server.js:
var express = require('express');
var app = express();
var mongoose = require('mongoose');
var morgan = require('morgan');
var bodyParser = require('body-parser');
var methodOverride = require('method-override');
var cors = require('cors');
mongoose.connect('mongodb://127.0.0.1:27017/courses');
app.use(morgan('dev'));
app.use(bodyParser.urlencoded({'extended': 'true'}));
app.use(bodyParser.json());
app.use(bodyParser.json({ type: 'application/vnd.api+json' }));
app.use(methodOverride());
app.use(cors());
app.use(function(req, res, next) {
res.header("Access-Control-Allow-Origin", "*");
res.header('Access-Control-Allow-Methods', 'DELETE, PUT');
res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
next();
});
var Course = mongoose.model('Course', {
coursecode: String,
email: String,
name: String
})
//Routes
app.get('api/courses', function(req, res){
console.log("Fetching Courses")
Course.find(function(err, courses){
if (err)
res.send(err)
res.json(courses);
});
});
app.post('api/courses', function(req, res){
console.log("Creating Entry in course");
Course.create({
title: req.body.title,
email: req.body.email,
name: req.body.name,
done: false
}, function(err, courses){
if (err)
res.send(err);
Course.find(function(err, courses){
if (err)
res.send(err)
res.json(courses);
});
});
});
app.delete('api/courses/:course_id', function(req, res){
Course.remove({
_id: req.params.course_id}, function(err, course){
});
});
app.listen(8080);
console.log("Listening on port 8080")
当我运行node server.js时,我在终端中看到“监听端口8080”,所以我知道一切都正常运行。然而,当我继续时,我得到了一个错误,无法得到/
感谢所有的帮助 您必须定义根(/
)路由。这不是免费给你的。尝试创建一个:
app.get('/', function(req, res){
console.log("Root Route")
res.json({ message: "hello world" });
});
将app.get('api/courses',
更改为app.get('/api/courses',
)
您需要在应用程序路由中添加斜杠(/)
有关路由的更多信息,请参阅此处:您尚未定义根路由…是否尝试转到
/api/courses
?