Size: a a a

var chat = new Chat();

2021 May 29

ВE

Виталий EasyMod... in var chat = new Chat();
Зроби окремий middleware який буде вести логи всіх запитів у тому числі і фіксувати час останнього запиту, будь то логін чи будь-який інший
источник

OP

Olexiy Palindromer in var chat = new Chat();
Як же middleware дізнаватиметься, що автентифікація пройшла успішно?
источник

ВE

Виталий EasyMod... in var chat = new Chat();
А звідки наприклад асп кор взагалі вкурсі що запит авторізований коли у контролера стоїть атрибут [authorize]? Є контекст, який передається пр циклу обробки запиту як до безпосередньої обробці за маршрутом призначення, так і після. Є взагалі міханізм - фільтри авторизації, там можна шо хочешь творити і перевіряти як до виконання запиту так і після
источник

ВE

Виталий EasyMod... in var chat = new Chat();
источник

ВE

Виталий EasyMod... in var chat = new Chat();
источник

ВE

Виталий EasyMod... in var chat = new Chat();
От тобі простий приклад, можешь такє саме зробити в тут фіксувати час
источник

OP

Olexiy Palindromer in var chat = new Chat();
1. Конвеєр дізнається про атрибут authorize за допомогою рефлексії.

2. Я про те, що щоб перевірити, що логінізація пройшла коректно в нашому конвеєрі потрібно буде безпосередньо перевіряти, що був викланий Login-метод, після чого якось дізнаватися, що логінізація пройшла коректно.

Тобто цей мідлвеєр буде використовуватися чисто для одного метода. А це порушуватиме принцип конвеєра.
источник

ВE

Виталий EasyMod... in var chat = new Chat();
Ти ускладнюєшь незрозуміло для чого. Ну пропиши прямо в логіні що ок чи не ок і час коли це відбулось - цеж по суті ті самі логі, стан системи не змінюється
источник

ВE

Виталий EasyMod... in var chat = new Chat();
Саме головне що треба зрозуміти - всі ці паттерни та принципи проектування це просто рекомендації та правила гарного тону, а не закон. Можно відходити якщо ти не бачишь як по іншому або це відбирає занадто багато часу
источник

DO

Denis Obolenskiy in var chat = new Chat();
Я б сделал командой и не парился
источник

ВE

Виталий EasyMod... in var chat = new Chat();
Якщо тобі стане легше, у мене наприклад в блазорі серверсайд взагалі останній роут і час фіксуються в MainLayout.razor 😃 бо там вже немає того конвеєру 😁
источник

DO

Denis Obolenskiy in var chat = new Chat();
Это правда
источник

OP

Olexiy Palindromer in var chat = new Chat();
😁
источник

DO

Denis Obolenskiy in var chat = new Chat();
К слову о конвейерах, видели новые способы создания апи в 6 дотнете?
источник

DO

Denis Obolenskiy in var chat = new Chat();
Говорят они там супербыстрые, а контроллеры оптимизацию не получат
источник

ВE

Виталий EasyMod... in var chat = new Chat();
Нет, просвети
источник

DO

Denis Obolenskiy in var chat = new Chat();
источник

Ɖ

Ɖrēw in var chat = new Chat();
Норм, покроет нишу "а вот в ваших дотнетах чтобы создать простейший сервер нужно создавать неповоротливый проект с 200 файлами"
источник

AM

Artur Mustafin in var chat = new Chat();
Я не понимаю, что ты этим хочешь сказать
источник

JS

John Stellmann in var chat = new Chat();
Так сделай через .Map() - у тебя весь проект будет состоять их файлов Startup.cs и Program.cs
источник