express中间件那节有个路径匹配的问题,导致结果输出有出入

来源:10-5 express中间件

慕的地5019507

2020-03-23

app.use(’/api’, (req, res, next) => {
console.log(‘处理 /api 路由’)
next()
})

app.get(’/api’, (req, res, next) => {
console.log(‘get /api 路由’)
next()
})

app.post(’/api’, (req, res, next) => {
console.log(‘post /api 路由’)
next()
})

express-test mac$ node app.js
server is ok
请求开始… GET /api/get-cookie
处理 /api 路由
get /api/get-cookie

上面是老师上课时的代码的一部分,下面是浏览器访问localhost:3000/api/get-cookie输出的内容,看起来app.get(’/api’, (req, res, next) => {
console.log(‘get /api 路由’)
next()
})这个函数是没有命中的,老师上课时讲这个也会执行,跟老师上课讲的好像有点出入,包括后面老师带我们写的那个中间件原理分析的代码执行后,这个函数也输出了,麻烦老师解答下,谢谢啦

写回答

1回答

双越

2020-03-23

改成这样试试

app.get('/api/', (req, res, next) => { // '/api/' 后面多一个 /
    console.log(‘get /api 路由’)
    next()
})


0
3
慕的地5019507
回复
双越
回复 双越 好的,感谢老师解答
2020-03-24
共3条回复

Node.js+Express+Koa2+Nest.js 开发服务端

从入门到实战,一站式掌握 Node.js+Express+Koa2

4051 学习 · 2006 问题

查看课程