Как добавить функцию в IncomingMessage?

Я попробовал так:

    var http = require('http');
    http.IncomingMessage.test = function() {
	console.log('успех');
    }
    app.get('/test', function(req, res) {
	req.test();
	res.send('okay');
    });

Мне нужно сделать так чтобы во всех req всегда была моя функция которая будет добавлятся при подключении модуля. Что делать?

https://expressjs.com/en/api.html#app.use

Похоже ты используешь expressjs. У этой библиотеки есть механизм под названием middleware - это такие функции, которые выполняются для каждого запроса. И фишка в том что объект req, передаваемый в middleware - тот же что и объект req, передаемый в функцию обработки (в конкретном примере - в обработчик GET /test). Следовательно объект req можно раширять новыми свойствами на уровне middleware.

middleware описывается как функция трех параметров. Первый - объект запроса, второй - объект ответа, четверный - коллбек функция, поторую нужно вызвать когда middleware завершил свои операции (важно не зыбать этого сделать). Ты хочешь в запросе создать новое свойство.

app.use(funciton (req, res, next) {
	req.test = function() {
		console.log('успех');
    }
})
app.get('/test', function(req, res) {
	req.test();
	res.send('okay');
});

Еще идея расширять объект запроса своими методами - не очень. Читающие такой код будут удивлены нестандарным методам. Я бы вместо расширения вынес функцию в отдельный модуль и вызывал бы с аргументом req.

Если все же решишь раширять объект запроса, то лучше складывать свои свойства в личный неймспейс, а не напрямую в объект запроса. Так и декларируешь что это твои собстенные функции и уменьшаешь шанс коллизии имен.

Я знаю что use можно использовать, но это не подходит для модуля.
Если нельзя сделать по человечески значит просто не буду писать модули, лучше уж функцию сразу вызывать из req так красивее чем чудище какое-то создавать.
Короче щас уже нашёл способ как это сделать, а вы мне не помогли, поэтому прощай данный форум)