2016-10-21 5 views
0

В Express потоковые ответы легко реализовать, поскольку res - объект потока.Потоковая реакция в Feathers

Внутри пользовательского метода обслуживания Perather, однако, как я могу передать что-то в качестве ответа?

ответ

1

Возможно, вы сможете реализовать custom response format, который передает res.data, если это поток, а затем разрешает ваш метод обслуживания потоком. Также обсуждается потоковая передача данных here.

+0

Звучит неплохо. Я попробую, и если это сработает, я приму этот ответ. Однако что-то не кажется правильным; если сама служба не вызывает 'res.send', что делает? Я не помню, чтобы было зарегистрировано какое-либо промежуточное ПО, которое будет после служб; только notFoundHandler, logger и errorHandler. И если сама служба называет 'res.send', и после этого я добавляю промежуточное ПО, не так ли поздно? Итак, что посылает 'res.data' для меня, если это не сервисное промежуточное программное обеспечение? –

+0

Просто уточнить для тех, у кого мог быть тот же вопрос, который у меня был: мне кажется, что Perather автоматически вставляет промежуточное программное обеспечение для передачи данных после каждого вызова 'app.use' или, по крайней мере, те, которые содержат промежуточное программное обеспечение службы. Поэтому, если вы добавите промежуточное ПО, например 'app.use (route, myService, myMiddleware)'), но 'myMiddleware' никогда не называет' next', промежуточное ПО передачи данных по умолчанию Perather никогда не вызывается и поэтому 'myMiddleware' может иметь" последние говорят "относительно' res'. @daff, пожалуйста, поправьте меня, если я ошибаюсь. –

+0

Да вот и все. Пользовательский обработчик ответа - это, в основном, промежуточное программное обеспечение, которое автоматически добавляется, но если вы зарегистрируете свой собственный ранее, на уровне обслуживания, который делает то же самое, что будет работать так же хорошо. – Daff