Sails.js меняет bodyParser для определенных путей
В Sails.js 0.10.5 я хочу заменить bodyParser для определенных путей. Например, используйте другой анализатор тела для пути '/app/upload', а для остальных используйте значение по умолчанию. Как мне это сделать?
1 ответ
Вы можете сделать это, переопределив config/http.js
, Добавьте пользовательский анализатор в промежуточное ПО и замените bodyParser
в порядке с вашим пользовательским парсером.
Как то так должно работать
module.exports.http = {
middleware: {
superBodyParser: function (req, res, next) {
if (req.path === '/app/upload') {
// your custom parser
}
else {
require('skipper')(req, res, next);
}
},
order: [
'startRequestTimer',
'cookieParser',
'session',
'myRequestLogger',
// 'bodyParser', <-- not required anymore
'superBodyParser'
'handleBodyParserError',
'compress',
'methodOverride',
'poweredBy',
'$custom',
'router',
'www',
'favicon',
'404',
'500'
]
}
};