Обычная практика API в стиле веб-перехватчика заключается в том, что потребитель API получает запрос веб-перехватчика, отвечает 204 No Content, закрывает соединение и затем обрабатывает запрос. Hapi.js не отправляет объект ответа до nextTick, что означает, что функция обработчика должна вернуться.
Выделение обработки запроса в отдельную функцию и вызов ее с помощью nextTick по-прежнему приводит к тому, что обработка происходит до отправки объекта ответа. setTimeout работает, но это отрицательно сказывается на производительности.
Расширения запросов Hapi казались опцией, но они присоединяются ко всем запросам, независимо от пути, что добавляет ненужные накладные расходы другим запросам.
Express.js имеет метод response.send(), который немедленно отправляет ответ. В идеале у Хапи должно быть что-то подобное.