если передан объект, и реализует MiddlewareInterface, то отрабатывает его как Middleware, если нет, уже дальше обарачивается и отрабатывает
Я понимаю где проблема, но это скорее редкий случай, чтобы одновременно и __invoke и MiddlewareInterface. И оно будет работать если передать ->addMIddleware(fn () => CorsMiddlware(...))
Я понимаю где проблема, но это скорее редкий случай, чтобы одновременно и __invoke и MiddlewareInterface. И оно будет работать если передать ->addMIddleware(fn () => CorsMiddlware(...))
согласен, но попался такой случай ), на сколько fn() => new CorsMiddlewae() дешевле, чем сразу обьект передать ?, если в конструкторе ничего не тянится
согласен, но попался такой случай ), на сколько fn() => new CorsMiddlewae() дешевле, чем сразу обьект передать ?, если в конструкторе ничего не тянится
Ненамного, но не у всех в конструкторе ничего не тянется. А если у тебя несколько сотен роутов, да по пару-тройке мидлтварей, это уже прилично может набежать.
ну если в конструкторе есть зависимости, согласен, но если нету, то разницы не думаю что будет, тогда запретить передачу объекта вообще, и указать в доке, что стринг, или кложа, и уже нужно сетапить в контейнере (если стринг)
ну если в конструкторе есть зависимости, согласен, но если нету, то разницы не думаю что будет, тогда запретить передачу объекта вообще, и указать в доке, что стринг, или кложа, и уже нужно сетапить в контейнере (если стринг)
Та я думаю, что объект-кложа - это норм. Можно этот кейс запретить просто