所以我制作了一个简单的express应用程序,但是我已经尝试了几个小时,以便在访问http://localhost:3000/时获得对一个简单的get请求的响应
这是我的app.js
// IMPORTS
const express = require('express')
const mongoose = require('mongoose')
const customerRouter = require('./routes/customerRoute.js')
const app = express()
const PORT = 3000
// CONNECTION
mongoose.connect('mongodb://localhost/Customers', {useUnifiedTopology: true })
mongoose.connection.on('open', () => {console.log('Connected to database.')})
//APP USE ROUTES AND JSON
app.use(express.json)
app.use('/customers',customerRouter)
app.get('/', (req, res) => {
res.send('Home')
})
// APP PORT SET
app.listen(PORT)
console.log('Server started on port 3000')
这是我的路由文件
const express = require('express')
const router = express.Router()
console.log('into the router')
router.get('/', (req, res) => {
console.log('GET request')
})
module.exports = router
用app.use(express.json())
替换app.use(express.json)
,一切都将正常工作。您在这个用JSON有效载荷解析传入请求的中间件中有一个错误。
来源:express docs
您在中间件中犯了一个错误app.use(express.json())
是一个函数,而不是express对象的属性。