Size: a a a

2021 April 15

ВС

Владислав Субботин... in phpGeeks
Есть даже подмена класса-обработчика в свойстве, например. То есть, того класса, который будет из свойства другого класса вызываться. Это гибко, но больно отлаживать, т.к. это только в рантайме видно, что запускается.
источник

T🐜

The Ant 🐜 in phpGeeks
то, что реквест в мидлвари должен пройти по цепочке в глубь, и резалт по той же цепочке обратно. У дектораторов  на любом шаге можно остановиться и выдать ответ без необходимости возвращать ответ вверх по цепочке.
источник

VM

Volodymyr Melko in phpGeeks
это прямо вот так написано
При использовании паттерна мидлварь обязательно надо вызвать next, иначе снизойдет на тебя гнев Аллаха и его велик?
источник

T🐜

The Ant 🐜 in phpGeeks
конешь, иначе это будет не мидлварь уже
источник

ВС

Владислав Субботин... in phpGeeks
В цепочке обязанности точно также, как ты хочешь
источник

T🐜

The Ant 🐜 in phpGeeks
а какой-то вариант пайплайна ) или чего... просто чейнинг
источник

ВС

Владислав Субботин... in phpGeeks
А что если в мидлварь сознательно заложено поведение if x === null throw new Blad!?
источник

VM

Volodymyr Melko in phpGeeks
function handle($request, $response, $next) {
   if (in_array($response->getStatusCode(), [401, 403])) { return $response;}

  // some magic
  return $next($request, $response);
}
источник

T🐜

The Ant 🐜 in phpGeeks
бляааа, я не помню как это называется. тоже есть название у логики на эксепшенах :D
источник

VM

Volodymyr Melko in phpGeeks
да бля, это все один паттерн. от того что ты его мидлварью обозвал это не значит, что оно перестало быть декоратором
источник

ВС

Владислав Субботин... in phpGeeks
Ну не суть. Миддлварь всё ещё миддлварь
источник

ВС

Владислав Субботин... in phpGeeks
Не обязательно идти дальше, если мы понимаем, что возник фатал и мы его итак обработаем
источник

ВС

Владислав Субботин... in phpGeeks
Точнее, в нашем случае, не то, что не обязательно, а мы не должны идти дальше, потому что так задумано
источник

T🐜

The Ant 🐜 in phpGeeks
в мидлвари мы должны поднять этот фатал на самый верхний уровень и там обработать
источник

ВС

Владислав Субботин... in phpGeeks
Щас psr почитаю, не помню, чтобы там чёт такое было
источник

ВС

Владислав Субботин... in phpGeeks
В любом случае, если тебе не надо этого делать, то твоя задача проще
источник

T🐜

The Ant 🐜 in phpGeeks
в целом пох на мидлвари. Интересно было как уиишники с декораторами работают. А потом вспомнил что в уии нет такого слова 🤣
источник

ВС

Владислав Субботин... in phpGeeks
Yii2 тут не при чём, потому что нет принципиальных отличий от других фреймворков. Тебе уже напомнили про бихэвиоры, например.
источник

T🐜

The Ant 🐜 in phpGeeks
да это вообще какой-то сатанинский паттерн
источник

ВС

Владислав Субботин... in phpGeeks
1.2 Промежуточное ПО
Компонент промежуточного программного обеспечения - это отдельный компонент, участвующий, часто вместе с другими компонентами промежуточного программного обеспечения, в обработке входящего запроса и создании результирующего ответа, как определено в PSR-7.

Компонент промежуточного программного обеспечения МОЖЕТ создавать и возвращать ответ без делегирования обработчику запросов, если выполняются достаточные условия.
источник