@Wynell_ru

Как работает .use (обработчик middleware-ов)?

Уже в нескольких библиотеках я обнаружил возможность встраивать middleware, и мне стало интересно, как изнутри работает эта функция .use

Потому, решил обратиться сюда с вопросом.
Так, как работает .use - обработчик middleware-ов изнутри? Можно примеры исходного кода .use-а (простите, гуглил поверхностно, не нашел)?
  • Вопрос задан
  • 190 просмотров
Решения вопроса 1
hzzzzl
@hzzzzl
вот, написал свой экспресс с миддлварами

class Express {
	response = {}
	middles = []

	use = func => this.middles.push(func)

	get = () => {
		this.middles.forEach(func => func(this.response))
		console.log('RESPONSE NOW: ',this.response)
	}
}

app = new Express()
app.get()
// response: {}

function addBla(res) { res.bla = 17 }
// миддлвар добавляет какое-то свойство в response от сервера

app.use(addBla)
app.get()
// response: {bla: 17}
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
miraage
@miraage
Старый прогер
Под капотом всякие express юзают https://www.npmjs.com/package/connect , а он уже рулит всё
Ответ написан
rockon404
@rockon404
Frontend Developer
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы