You need to enable JavaScript to run this app. Multer可选限制参数含义及防DDoS配置咨询
优惠活动
大模型
产品
解决方案
定价
更多

Multer可选限制参数含义及防DDoS配置咨询

Multer限制类参数详解与安全配置

各参数疑问对应解答

  • fieldNameSize:*是,仅针对multipart请求中提交的字段名称(即表单元素的name属性值)设置大小限制,不涉及req.body/req.file的其他内容,默认100字节,超限触发LIMIT_FIELD_NAME错误。
  • fieldSize:*是,限制逻辑与字段名参数一致,仅将限制对象替换为非文件类字段的字段值(文件字段大小由fileSize单独管控),默认1MB,超限触发LIMIT_FIELD_VALUE错误。
  • fields:*是,限制对象为请求体中允许的非文件类字段的最大数量,超限触发LIMIT_FIELDS错误。
  • parts:*限制的是multipart请求体中所有part的总数量——multipart格式会将每个表单元素(文件/非文件字段)拆为独立的part(含自身头与内容),例如1个文件part + 2个非文件part = 3个parts,超限触发LIMIT_PARTS错误。
  • headerPairs:*不对应HTTP全局请求头(如Bearer令牌的请求头),限制的是multipart请求中每个part内部的header配对数量(每个part自带Content-Disposition/Content-Type等内部头),默认无限,超限触发LIMIT_HEADER_PAIRS错误。

安全阈值配置建议

  • 必须设置自定义限制:fields/parts默认无限时,攻击者可构造海量小part/非文件字段的恶意请求,占用Multer解析的内存与CPU资源,触发DDoS。
  • 阈值设定逻辑(宁紧勿松,基于业务最小合法需求):
    • 先统计业务表单的最大合法part总数:例如电商商品上传场景,若需10张商品图(10个文件part)+ 4个非文件字段(名称/价格/描述/分类,4个非文件part),总合法part为14,可设parts=15(留1-2个冗余应对合法边缘情况)。
    • fields阈值设为业务允许的非文件字段最大数量+1-2冗余,例如上述场景设为5。
    • 同步配置其他限制参数:fieldNameSize=200字节(覆盖最长合法字段名)、fieldSize=2MB(覆盖最长合法非文件字段值,如商品描述)、headerPairs=10(覆盖每个part的最大合法内部头数量)。

内容的提问来源于stack exchange,提问作者josh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.29 20:24:02