如何更改Firebase中的正文解析器限制?

时间:2017-08-03 16:25:44

标签: node.js express firebase google-cloud-functions body-parser

我正在尝试将文件上传代理到firebase云功能,以便不公开我们的API网址。

似乎Firebase正在使用Body-parser来解析请求中的body,但默认情况下它限制为100kb。

我试过这个: var bodyParser = require('body-parser'); app.use(bodyParser.json({limit: '50mb'})); app.use(bodyParser.urlencoded({limit: '50mb', extended: true}));

但似乎没有使用bodyParser。它使用嵌入Firebase框架的私有内容。有没有办法改变它的限制?

这就是我得到的:

  

块引用   错误:{错误:请求实体太大       在readStream(/usr/local/lib/node_modules/firebase-tools/node_modules/raw-body/index.js:196:17)       at getRawBody(/usr/local/lib/node_modules/firebase-tools/node_modules/raw-body/index.js:106:12)       在读取(/usr/local/lib/node_modules/firebase-tools/node_modules/body-parser/lib/read.js:76:3)       在urlencodedParser(/usr/local/lib/node_modules/firebase-tools/node_modules/body-parser/lib/types/urlencoded.js:115:5)       在Layer.handle [as handle_request](/usr/local/lib/node_modules/firebase-tools/node_modules/express/lib/router/layer.js:95:5)       在trim_prefix(/usr/local/lib/node_modules/firebase-tools/node_modules/express/lib/router/index.js:317:13)       at /usr/local/lib/node_modules/firebase-tools/node_modules/express/lib/router/index.js:284:7       在Function.process_params(/usr/local/lib/node_modules/firebase-tools/node_modules/express/lib/router/index.js:335:12)       在下一个(/usr/local/lib/node_modules/firebase-tools/node_modules/express/lib/router/index.js:275:10)       at textParser(/usr/local/lib/node_modules/firebase-tools/node_modules/body-parser/lib/types/text.js:78:7)       在Layer.handle [as handle_request](/usr/local/lib/node_modules/firebase-tools/node_modules/express/lib/router/layer.js:95:5)       在trim_prefix(/usr/local/lib/node_modules/firebase-tools/node_modules/express/lib/router/index.js:317:13)       at /usr/local/lib/node_modules/firebase-tools/node_modules/express/lib/router/index.js:284:7       在Function.process_params(/usr/local/lib/node_modules/firebase-tools/node_modules/express/lib/router/index.js:335:12)       在下一个(/usr/local/lib/node_modules/firebase-tools/node_modules/express/lib/router/index.js:275:10)       at rawParser(/usr/local/lib/node_modules/firebase-tools/node_modules/body-parser/lib/types/raw.js:76:7)     预期:611961,     长度:611961,     限制:102400,     消息:'请求实体太大',     状态:413,     statusCode:413,     类型:'entity.too.large'}   块引用

1 个答案:

答案 0 :(得分:0)

您是否还使用:app.use(express.json())? 如果你也使用这个中间件,express.json() 有 100kb 的限制,你应该尝试不用它。