使用morgan 1.9.0和browser-refresh 1.7.2构建express应用程序。
摩根似乎忽略了skip选项。我的应用程序初始化为
const skipFcn = (req, res) => req.path.startsWith('/static/views')
app.use((req, res, next) => {
console.log('test:', skipFcn(req, res))
next()
})
app.use(morgan('combined', {
skip: skipFcn
}))但在我的日志中,browser-refresh仍然有成百上千的点击量
test: true
::1 - - [14/Oct/2017:10:09:07 +0000] "GET /static/views/project$0.0.0/views/components/service-form.marko.jsHTTP/1.1" 200 3748 "http://localhost:4002/admin/services" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36"发布于 2018-02-02 20:26:48
我使用了下面的代码,它很有效
app.use(morgan('combined', {skip: (req, res) => {return req.originalUrl.startsWith('/src')}));你可能想试一试,看看它在你那端是否有效。
发布于 2021-08-19 23:27:32
只是在这里登记一下。
我也有同样的问题。我不知道我做错了什么,在比它应该做的更长的时间之后,我进入了node_modules/morgan/index.js,并在第80行添加了以下内容:
console.log('SKIP FUNCTION:', skip.toString());这立即显示了我的项目中的秘密位置,也就是我正在配置Morgan的地方,它正在重创我试图配置Morgan的新位置(再次)。
删除我的遗留配置后,摩根跳过功能开始漂亮地工作。
https://stackoverflow.com/questions/46743350
复制相似问题