【问题标题】:Why does my express router not respond to my get request?为什么我的快速路由器不响应我的获取请求?
【发布时间】:2020-12-11 14:57:10
【问题描述】:

所以我做了一个简单的快速应用程序,但是当我访问 http://localhost:3000/ 时,我已经尝试了几个小时来获得对简单获取请求的响应

这是我的 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

【问题讨论】:

    标签: javascript node.js mongodb express mongoose


    【解决方案1】:

    app.use(express.json) 替换为app.use(express.json()),一切正常。您在解析带有 JSON 有效负载的传入请求的中间件中存在错误。

    来源:express docs

    【讨论】:

      【解决方案2】:

      你在中间件中犯了一个错误app.use(express.json())是一个函数而不是express对象的属性。

      【讨论】:

        猜你喜欢
        • 2018-12-07
        • 1970-01-01
        • 1970-01-01
        • 2022-01-15
        • 2021-05-06
        • 1970-01-01
        • 2020-04-22
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多