Node.js 内容类型为text/csv时的Sails.js正文内容

Node.js 内容类型为text/csv时的Sails.js正文内容,node.js,express,sails.js,Node.js,Express,Sails.js,我是否需要执行任何特殊操作来处理文本类型为的POST请求 我需要处理text/csv,但当我进入控制器中的方法时,看起来Sails.js试图将主体解析为JSON: postStuff: function(req, res) { sails.log.info("postStuff") sails.log.info(req.body) sails.log.info(req.headers['content-type']); ...etc... 给我: info: postS

我是否需要执行任何特殊操作来处理文本类型为
POST
请求

我需要处理
text/csv
,但当我进入控制器中的方法时,看起来Sails.js试图将主体解析为JSON:

postStuff: function(req, res) {
    sails.log.info("postStuff")
    sails.log.info(req.body)
    sails.log.info(req.headers['content-type']);
...etc...
给我:

info: postStuff
info: {}
info: text/csv
我发现
bodyParser
中间件上的文档有点模糊

FWIW,我还尝试在请求中将
内容类型设置为
text/plain
,但没有成功

我还尝试显式添加一个文本体解析器作为中间件,但似乎没有任何效果:

http.js

module.exports.http = {
  bodyParserText: require('body-parser').text(),
  middleware: {
    order: [
      'startRequestTimer',
      'cookieParser',
      'session',
      'myRequestLogger',
      'bodyParser',
      'bodyParserText',
      'handleBodyParserError',
      'compress',
      'methodOverride',
      'poweredBy',
      '$custom',
      'router',
      'www',
      'favicon',
      '404',
      '500'
    ],
...etc...

哇,这原来很容易。。。但是由于缺乏来自框架的反馈,调试起来非常困难

https.js
中,新中间件的元素必须位于
中间件
元素中。。。如果课程有意义:

module.exports.http = {
  // NOT HERE
  //  bodyParserText: require('body-parser').text(),
  middleware: {
    // HERE
    bodyParserText: require('body-parser').text(),
    order: [
      'startRequestTimer',
      'cookieParser',
      'session',
      'myRequestLogger',
      'bodyParser',
      'bodyParserText',
      'handleBodyParserError',
...etc...

如果sails.js(express?)给出一个警告就好了,因为我假设它找不到
bodyParserText

注意
中间件中的
bodyParserText
的顺序。顺序
列表也没有任何区别。