为什么我在 URL 上收到 404 错误?
Why am I getting a 404 error on this URL?
谁能告诉我为什么在 URL 中键入 \book
时出现 404
错误?
这是我的代码:
var express = require('express'),
app = express(),
chalk = require('chalk'),
debug = require('debug')('app'),
morgan = require('morgan'),
path = require('path'),
PORT = process.env.PORT || 3000;
app.use(morgan('tiny'));
const bookRoutes = require('./routes/bookroutes');
app.use(express.static(path.join(__dirname,'/public')));
app.use('/css',express.static(path.join(__dirname,'/node_modules/bootstrap/dist/css')))
app.use('/js',express.static(path.join(__dirname,'/node_modules/bootstrap/dist/js')))
app.use('/js',express.static(path.join(__dirname,'/node_modules/jquery/dist')))
app.use('book',bookRoutes);
app.get('/', (req, res) => {
res.sendFile(path.join(__dirname, '/views/index.html'))
});
app.listen(PORT, () => {
debug(`listing to ${chalk.red(PORT)}`);
});
和bookroutes.js:
var express = require('express');
var bookRoutes = express.Router();
bookRoutes.route('/', (req, res) => {
console.log('book')
res.send('book')
});
module.exports = bookRoutes;
当我在浏览器URL中输入http://localhost:3000/book时,它会显示这些错误:
[nodemon] restarting due to changes...
[nodemon] starting `node index.js`
app listing to 3000 +0ms
GET /worker.js 404 148 - 7.814 ms
GET /book 404 143 - 1.021 ms
您的代码有几个问题。您的路线定义中缺少 /
。
app.use('/book', bookRoutes);
在 bookRoutes.js
中,您必须使用 router
对象上的 get
方法来定义 GET /book
端点的处理程序。
bookRoutes.get('/', (req, res) => {
res.send('book');
});
有关详细信息,请查看 documentation。
谁能告诉我为什么在 URL 中键入 \book
时出现 404
错误?
这是我的代码:
var express = require('express'),
app = express(),
chalk = require('chalk'),
debug = require('debug')('app'),
morgan = require('morgan'),
path = require('path'),
PORT = process.env.PORT || 3000;
app.use(morgan('tiny'));
const bookRoutes = require('./routes/bookroutes');
app.use(express.static(path.join(__dirname,'/public')));
app.use('/css',express.static(path.join(__dirname,'/node_modules/bootstrap/dist/css')))
app.use('/js',express.static(path.join(__dirname,'/node_modules/bootstrap/dist/js')))
app.use('/js',express.static(path.join(__dirname,'/node_modules/jquery/dist')))
app.use('book',bookRoutes);
app.get('/', (req, res) => {
res.sendFile(path.join(__dirname, '/views/index.html'))
});
app.listen(PORT, () => {
debug(`listing to ${chalk.red(PORT)}`);
});
和bookroutes.js:
var express = require('express');
var bookRoutes = express.Router();
bookRoutes.route('/', (req, res) => {
console.log('book')
res.send('book')
});
module.exports = bookRoutes;
当我在浏览器URL中输入http://localhost:3000/book时,它会显示这些错误:
[nodemon] restarting due to changes...
[nodemon] starting `node index.js`
app listing to 3000 +0ms
GET /worker.js 404 148 - 7.814 ms
GET /book 404 143 - 1.021 ms
您的代码有几个问题。您的路线定义中缺少 /
。
app.use('/book', bookRoutes);
在 bookRoutes.js
中,您必须使用 router
对象上的 get
方法来定义 GET /book
端点的处理程序。
bookRoutes.get('/', (req, res) => {
res.send('book');
});
有关详细信息,请查看 documentation。