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-bodyco-body 的底层又是 raw-bodyraw-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状态码的问题的更多相关文章

  1. python(30) 获取网页返回的状态码,状态码对应问题查询

    获取访问网页返回的状态码 html = requests.get(Url) respon = html.status_code 以下内容来自于维基百科:点击查看网页 1xx消息 这一类型的状态码,代表 ...

  2. 介绍知道的http返回的状态码

    100    Continue    继续.客户端应继续其请求 101    Switching Protocols    切换协议.服务器根据客户端的请求切换协议.只能切换到更高级的协议,例如,切换 ...

  3. IIS7.0设置404错误页,返回500状态码

    一般在II6下,设置自定义404错误页时,只需要在错误页中选择自定义的页面,做自己的404页面即可.但是在IIS7.0及以上时,设置完404错误页后,会发现状态码返回的是500,并且可能会引起页面乱码 ...

  4. ASP.NET设置404页面返回302HTTP状态码的解决方法

    在配置文件中配置404页面如下: .代码如下: <customErrors mode="On" defaultRedirect="404.aspx"> ...

  5. Nginx自定义404页面并返回404状态码

    Nginx定义404页面并返回404状态码, WebServer是nginx,直接告诉我应该他们配置了nginx的404错误页面,虽然请求不存在的资源可以成功返回404页面,但返回状态码确是200. ...

  6. HTTP 返回的状态码 != 200 ,浏览器不会将返回的内容缓存到本地磁盘上

    今天无意发现的,以前处理HTTP State = 404或403之类的,都是直接返回 HTTP 200 OK,然后加一个缓存设置,例如: Cache-Control: max-age=3600 最近修 ...

  7. PHP发送返回404状态码

    1. 默认的由Apache自动处理的404 修改Aache的配置文件 httpd.conf 中的 ErrorDocument 404 /404.html 或者使用 .htaccess文件,同时有要把 ...

  8. HTTP返回结果状态码小结

    HTTP 状态码负责表示客户端 HTTP 请求的返回结果.标记服务器端的处理是否正常.通知出现的错误等工作. 一.状态码的类别 状态码的职责是当客户端向服务器端发送请求时,描述返回的请求结果.借助状态 ...

  9. apache 返回的状态码304

    博客转载:http://baike.baidu.com/link?url=jhw62dpK66WD7EQFKWEhVQs_jPeFKIUegnA6 如果客户端发送了一个带条件的GET 请求且该请求已被 ...

随机推荐

  1. EasyMvc入门教程-基本控件说明(8)提醒导航

    提醒导航顾名思义就是提醒大家注意某些文字了..请看下面的例子: 实现代码如下: @Html.Q().BlockRemind().Text("我可以作为提醒使用") 有的同学会说:这 ...

  2. base64加密PHP脚本的解码方法

    转自:http://yoursunny.com/t/2009/PHP-decode/ PHP是网站服务端最流行的编程语言之一.PHP运行环境本身是开源的,服务器不加载插件时PHP脚本也无法加密.但是, ...

  3. highcharts 绘制图标的JAVASCRIPT 类库 收藏

    官方站点 : http://www.highcharts.com 演示样例网址 : http://www.highcharts.com

  4. iOS 瀑布流封装

    代码地址如下:http://www.demodashi.com/demo/12284.html 一.效果预览 功能描述:WSLWaterFlowLayout 是在继承于UICollectionView ...

  5. IIS配置asp.net网站

    http://wenku.baidu.com/view/f8ce6c14767f5acfa0c7cd36.html

  6. C# Excel

    using System.IO;using System.Text;namespace iLIS.Common{ ///<summary> ///生成Excel文档内容 /// 存入工作流 ...

  7. Spring学习五----------Bean的配置之Bean的生命周期

    © 版权声明:本文为博主原创文章,转载请注明出处 Bean的生命周期 1.定义 2.初始化 3.使用 4.销毁 初始化和销毁的三种方式 1.实现org.springframework.beans.fa ...

  8. VESA-ADV7123-SOCKIT-DE2115

    /*--VGA Timing--Horizontal :-- ______________ _____________-- | | |--_______________| VIDEO |_______ ...

  9. python之prettytable

    sdata={'语文':89,'数学':96,'音乐':39,'英语':78,'化学':88} #字典向Series转化 >>> studata=Series(sdata) > ...

  10. thymeleaf模版的使用

    thymeleaf,我个人认为是个比较好的模板,性能也比一般的,比如freemaker的要高,而且把将美工和程序员能够结合起来,美工能够在浏览器中查看静态效果,程序员可以在应用服务器查看带数据的效果. ...