【问题标题】:Setting Request Limit in a Meteor.js App在 Meteor.js 应用程序中设置请求限制
【发布时间】:2014-07-16 22:39:34
【问题描述】:

我正在尝试将大量 JSON 发送到 Meteor.js 应用程序中的服务器端路由。我不断收到此错误...

错误:请求实体太大 在 Object.exports.error (/mnt/data/2/node_modules/connect/lib/utils.js:62:13) 在限制(/mnt/data/2/node_modules/connect/lib/middleware/limit.js:46:47) 在 urlencoded (/mnt/data/2/node_modules/connect/lib/middleware/urlencoded.js:58:5) 在 /mnt/data/2/node_modules/connect/lib/middleware/bodyParser.js:55:7 在 json (/mnt/data/2/node_modules/connect/lib/middleware/json.js:46:55) 在 Object.bodyParser [作为句柄] (/mnt/data/2/node_modules/connect/lib/middleware/bodyParser.js:53:5) 在下一个(/mnt/data/2/node_modules/connect/lib/proto.js:190:15) 在 Object.query [作为句柄] (/mnt/data/2/node_modules/connect/lib/middleware/query.js:44:5) 在下一个(/mnt/data/2/node_modules/connect/lib/proto.js:190:15) 在 Object.Package [作为句柄] (packages/spiderable/spiderable.js:108)

在我的研究中,我发现我需要为连接中间件设置请求限制。有谁知道我如何在 Meteor 中做到这一点?谢谢!

【问题讨论】:

    标签: javascript json meteor iron-router


    【解决方案1】:

    因此,经过一段时间的反复试验,最终对我有用的是修改 IronRouter 包。 /lib/server/router.js 第 30 行更改...

    start: function () {
    connectHandlers
      .use(connect.query())
      .use(connect.bodyParser())
      .use(_.bind(this.onRequest, this)); },
    

    到...

    start: function () {
    connectHandlers
      .use(connect.query())
      .use(connect.bodyParser({limit: '100mb'})) // or whatever you want your limit to be
      .use(_.bind(this.onRequest, this)); },
    

    【讨论】:

      【解决方案2】:

      另一种解决方案是在服务器的某处添加以下代码(例如,Meteor.startup):

      Router.configureBodyParsers = function() {
        Router.onBeforeAction(Iron.Router.bodyParser.urlencoded({
          extended: true,
          limit: '100mb'
        }));
      };
      

      (ref)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-07-03
        相关资源
        最近更新 更多