koa-bodyparser返回413状态码的问题
来源:互联网 发布:林珊珊的淘宝店质量 编辑:程序博客网 时间:2024/06/15 03:05
413 Request Entity Too Large(请求实体太大)
数日前,我用 node.js 写的一个日志服务抛出了这个状态码……
自己写的服务抛出了一个自己都不认识的状态码,这是最气的!(╯‵□′)╯︵┻━┻
检查之下发现是 koa-bodyparser 这个中间件的配置不太对;
因为这个中间件实在是太好用,装上后几乎什么都不用管,以至于我连她需要什么配置都不清楚,出了错之后才赶紧回去翻文档,
虽然写的很简略,但官方文档中还是提到了
formLimit: limit of the urlencoded body. If the body ends up being larger than this limit, a 413 error code is returned. Default is 56kb.
jsonLimit: limit of the json body. Default is 1mb.
textLimit: limit of the text body. Default is 1mb.
这三个配置项就是对请求体进行限制的,一般情况下默认的限制就够用,但如果涉及到使用 form-data 方式进行富文本上传,可能就会出错了,因为 form-data 的默认最大上传限制只有 56kb ;
只需要改成:
app.use(bodyParser({ formLimit: '1mb' }));
至于这三个 limit 选项可以支持的单位,官方文档上没有写,但是查了一下原代码可以发现:koa-bodyparser
的底层是 co-body
, co-body
的底层又是raw-body
, raw-body
则使用 bytes
库的 bytes.parse
来格式化 limit 参数。
so,我们可以使用bytes
库支持的所有单位来设置 limit 配置项,具体来讲,文档上写的是:
- b for bytes
- kb for kilobytes
- mb for megabytes
- gb for gigabytes
- tb for terabytes
如果不写单位,默认就是 'b' ,更细节的东西可以查看 bytes
库的文档
- koa-bodyparser返回413状态码的问题
- bodyParser中间件的研究
- bodyparser的作用
- (Ryan的Koa系列博客)10.基础知识:HTTP状态码(本文尚未整理)
- http请求时没有返回的状态码问题
- 有关HTTP 返回200状态码 没有返回数据的小问题。
- 使用connect的bodyParser中间件上传文件
- connect的bodyParser中间件处理文件上传
- http status(服务器返回的状态码)
- http响应返回的状态码
- 请求http的返回状态码含义
- HTTP请求返回的状态码说明
- http status(服务器返回的状态码)
- 服务器返回的各种HTTP状态码
- shell脚本执行返回的状态码
- HTTP返回的状态码及含义
- shell脚本执行返回的状态码
- HTTP请求返回的状态码说明
- SPOJ
- PHP微信支付开发实例
- js中window.location.search的用法和作用。
- HDU 6158 The Designer(笛卡尔定理)
- 私有网段IP地址的划分
- koa-bodyparser返回413状态码的问题
- Hard challenge(hdu6127)
- k-means算法
- 【ARM-Linux开发】ARM嵌入式设备Linux系统启动步骤和方式
- Python3之socket网络编程
- Python学习笔记(一)三步走安装pip
- echarts彩虹图在js中的应用
- 僵尸进程问题排查方法
- Java设计模式之创建者模式