【发布时间】:2013-09-27 20:16:33
【问题描述】:
这是一个在全球范围内为我工作的示例 (Express 3) 中间件设置:
app.configure(function () {
app.use(express.static(__dirname + "/public"));
app.use(express.bodyParser({
keepExtensions: true,
limit: 10000000, // set 10MB limit
defer: true
}));
//... more config stuff
}
对于security reasons,我不想在/upload 以外的路由上允许500GB+ 的帖子,所以我试图弄清楚如何在特定路由上指定限制,而不是在中间件中全局指定限制。
我知道multipart middleware in bodyParser() 已经嗅出内容类型,但我想进一步限制它。
这似乎在 express 3 中不起作用:
app.use('/', express.bodyParser({
keepExtensions: true,
limit: 1024 * 1024 * 10,
defer: true
}));
app.use('/upload', express.bodyParser({
keepExtensions: true,
limit: 1024 * 1024 * 1024 * 500,
defer: true
}));
当我尝试在 upload URL 上上传 3MB 文件时,我收到错误 Error: Request Entity Too Large。
你如何正确地做到这一点?
【问题讨论】:
标签: node.js express connect large-file-upload