【已解決】K8s + Ingress + Nodejs代理服務(wù)報錯:413 Request Entity Too Large

在使用nodejs作為代理服務(wù)時,遇到上傳文件報錯:413 Request Entity Too Large,在網(wǎng)上查了很多資料,大多是解決nodejs文件大小限制,經(jīng)過反復(fù)排查,終于將問題定位到k8s路由(Ingress)配置。

一、解決方案

修改路由(Ingress)配置YAML,添加proxy-body-size設(shè)置。

// 我們業(yè)務(wù)中需要將近100M文件打下,所以設(shè)置了100M,具體業(yè)務(wù)具體對待
nginx.ingress.kubernetes.io/proxy-body-size: 100M
WX20200407-133508@2x.png

配置更新后上傳文件正常。

二、記錄Express設(shè)置文件limit

在這里順便記錄下express如何設(shè)置文件上傳大小限制(Express 4.x.x)。

// 安裝body-parser
npm install --save body-parser

// 使用body-parser中間件
var bodyParser = require("body-parser");
app.use(bodyParser.json({limit: '100mb'}));
app.use(bodyParser.urlencoded({limit: '100mb', extended: true, parameterLimit:100000}));
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容