Примерно вот так попадают.
Не знаю, как там внутри выглядить нативный модуль http, но допустим, чисто схематически как-то так:
class Http {
constructor(req, res) {
this.req = req;
this.res = res;
}
createServer(func) {
func(this.req, this.res);
}
}
const http = new Http({ url: '/' },
{ write: (s) => console.log(s) });
И теперь пишем знакомые буквы:
http.createServer(function(req, res) {
if(req.url == '/')
res.write('Hello, World!');
});
Запущеный код пишет Hello World в консоль - будем считать это ответом сервера. Гы!
(извините, это я попробовал, как тут с кодом сообщения пейсать - щас погляжу, что вышло)