javascript - 在 Node Express 路由中使用句点时收到 403

标签 javascript node.js express url-routing

我正在使用通配符路由来访问 Node 应用程序中的文件。有些文件以句点开头。在这种情况下,我得到 403 Forbidden。这些路径有什么问题吗?

更新:

我使用的通配符路由看起来像

app.get('/:area/:place/blob*', function (req, res, next) {

因此导致问题的路线如下

/my/area/.git

最佳答案

我假设您的意思是您正在使用快速静态中间件,在这种情况下您可以使用 dotfiles 选项。

express.static( 'path', { dotfiles: 'allow' } );

如果您使用静态中间件,也许可以提供更多详细信息(和一些代码) - 我可以尽力帮助您。

干杯。

编辑

仍然不知道你的回调是什么样的,但我必须假设你正在使用res.sendFile()。如果是这样,请尝试

res.sendFile( '/my/area/.git', { dotfiles: 'allow' } );

如果您没有使用 sendFile,请发布您的整个回调。我不确定 Express 如何自动 403 处理该请求。

关于javascript - 在 Node Express 路由中使用句点时收到 403,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28569421/

相关文章:

node.js - 如何在MongoDB中按日期查询文档?

javascript - 使用快速验证器注册时如何验证用户用户名

javascript - 当金额不是美元时,前面不要有 $ 符号

javascript - 带 setInterval 的幻灯片

javascript - 使用 .each() jquery 时限制为 div 中的对象

node.js - 将 jBPM 与 Node.js 和 PostgreSQL 集成

javascript - 是否需要将 Promise 参数传递给 Knex 迁移?

javascript - 窗口函数回调说明

javascript - Node.JS undefined 不是所需模块上的函数

node.js - nodejs+express文件上传tmp名称唯一