首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在sailsjs中流式上传非分块的内容

如何在sailsjs中流式上传非分块的内容
EN

Stack Overflow用户
提问于 2016-06-21 12:19:52
回答 1查看 120关注 0票数 0

我刚刚通读了sails-skipper的文档。看起来是一个处理多部分文件上传的好方法。

但是,如果我想流式上传不是多部分有效负载的内容呢?--在我的当前情况下,它是一个简单的“文本/csv”上传。

我已经尝试过简单地使用request.pipe ...但这似乎行不通。

EN

回答 1

Stack Overflow用户

发布于 2016-06-21 14:16:43

答案是...斯基普不会帮上忙的。相反,(就像在通用的express应用程序中一样),在skipper之前使用middleware,这会将req._body = true设置为欺骗上游bodyParser (默认情况下,sails的skipper是skipper)。

在我的例子中,在config/http.js中:

代码语言:javascript
复制
var typeIs = require('type-is');

module.exports.http = {

  middleware: {

    order: [
      ...
      'dontParseCSV',
      ...
      'bodyParser',
      ...
    ],
    dontParseCSV: function (req, res, next) {
      if(typeIs(req, 'csv')) {
        // fool body parser into thinking already parsed
        // so we can stream csv
        req._body = true;
      }
      next();
    },
  ...
  }
};

路由器位于regexp之后,因此只针对特定路由执行此操作可能有点不方便(至少如果您希望路由器识别该路由,而不仅仅是在bodyParser :中进行黑客攻击)。在我的例子中,我的所有其他路由都只接受json,所以这不是问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37935531

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档