Commit fd6a286
fix(upload): fileSize 用 Number.isSafeInteger 校验,拒小数
Content-Length 必须是非负整数,原来用 Number.isFinite 会放 10.5 这种小数通过,
签名 URL 绑 ContentLength: 10.5,R2 在客户端 PUT 时才 reject,用户看来是静默失败。
换成 Number.isSafeInteger:
- 拒 NaN / Infinity(isFinite 本来也拒,保持)
- 拒所有小数
- 隐含上界 <=2^53-1(Number.MAX_SAFE_INTEGER),不会被天文数字 number 溢出
负数还是靠 < 0 单独挡(isSafeInteger(-5) === true)。大小上限 MAX_UPLOAD_BYTES 不变。1 parent 50b3e4e commit fd6a286
1 file changed
Lines changed: 4 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
127 | 127 | | |
128 | 128 | | |
129 | 129 | | |
130 | | - | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
131 | 134 | | |
132 | 135 | | |
133 | 136 | | |
| |||
0 commit comments