Search
Write a publication
Pull to refresh
1
0
Send message

Единственный адекватный человек, который это заметил.

Пример по ссылке очень уж далек от практики. Что если мне все фабрики нужны сразу, и выбор нужной при старте не подходит под бизнес логику? Выбор конкретной фабрики будет происходить в run time, а кто все эти фабрики будет порождать? Добро пожаловать switch case по фабрикам?

И да, классический подход фабрики очень уж противоречивый как по мне. У Вас в фабрике есть тре метода порождающие разные объекты(createChair/createSofa/createCoffeeTable), хорошо что метода только 3 а не 103. А как же open closed principle? При добавлении нового предмета лезть в уже написанный класс? А как же single responsibility? Почему методы создающие диван и кресло в одном классе?

"Паника началась не из-за зажравшихся геймеров, а потому что важный сегмент рынка (консоли прошлого поколения на западе представляют собой более крупный рынок чем ПК) был кинут"


Я и говорю — зажравшиеся геймеры


Только я не вижу связи между тем что кого то кинули и обвалом цен на акции. В самом начале я сказал, что акции упали потому что их начали продавать на фоне всего этого. А ещё новость была, что кто-то(не помню кто) вроде как из директоров CDP ещё до выхода скинул свои акции. Совпадение? Не думаю

Ну и отлично. Пусть консольщики вообще не видят этой игры

Цена акций рухнула, по большему счету, потому что всякие "мамкины инвесторы" на фоне плохих новостей начали скидывать акции. Вспомните теслу и твит Маска.
Продажи есть, на ПК почти все ок. Если бы не началась эта паника из-за зажравшихся геймеров, то и патчи вышли бы быстрее. Да, возможно, руководство или издатели торопили процесс, так как переносить уже было некуда, но если бы не торопили, то что мы видим сейчас, произошло бы после очередного перенеса.
Не знаю, как по мне, игра годная. Как там на консолях не знаю, но на ПК почти все идеально.

Почему во всех статьях и во всех уроках в редьюсере пишут эти уродливые switch case? Можно же сразу показать как правильно и удобно и красиво это сделать. Статья от этого больше не стала бы

Какой-нибудь Strings.isNullOrEmpty() это не тоже самое, что достать авторизованного пользователя из контекста. Я не имел ввиду, что любое использование статических методов это зло.
ultrinfaern писал что не стоит смешить логику контроля доступа, и бизнес логику. И с этим я согласен, но вот это
Объект Authentication со всей информацией о юзере и его грантах доступен вас из любого места приложения, через публичный статический метод контекста

как раз и есть смешивание бизнес логики и контроля доступа. В каком-нибудь сервисе, мне должно быть все равно, кто пришел и хочет это сделать. Тот у кого нет прав это делать, просто не должен был дойти до этого метода
Ну вы же не просто так целый объект User в виде параметра передаете

Вы имеете ввиду, в метод контроллера? Если да, то понятно почему. Мне же надо знать, в контроллере, кто хочет совершить эти действия, что бы они отразились именно на нем. Например он хочет изменить свои данные. В таком случае мне и нужен весь User. Да и в других случаях тоже нужен юзер, или как минимум его id.

Скорее всего дальше вы из него что-то вытягиваете, например список групп, и смотрите, есть ли определенная группа или нет

Опять же, где дальше? В самом контроллере? Если нужна логика ролей, то это все можно опять же передать в аннотацию, и там все это проверять

ЗЫЗЫ В спринг секюрити это выглядело-бы так

А как в security получить юзера, кроме как дергать его из контекста? От этого я и хотел избавиться

Концовка класс. Код контроллера не показали, но запросы куда отправили. Я понимаю, что это было в каком-то другом посте, можно было хотя бы ссылку дать.

контроль доступа и бизнес логика должны быт разделены

А где они смешаны?
«Доставать юзера из контекста» очень просто

Этого я и хотел избежать. Я хотел что бы юзер уже просто был, и его не надо было ниоткуда доставать.

Объект Authentication со всей информацией о юзере и его грантах доступен вас из любого места приложения, через публичный статический метод контекста

Использование статических методов, это очень профессионально
Суть статьи изложена в последних 3-х пунктах. Эта статья не конкретно про правильную работу с JWT
Время жизни токена 24 часа? А как в случае его компрометации его отзывать?

Удалить из базы. А вообще, смотря как будет устроена работа с JWT.

Для этого существует подход с access/refresh токенами

Это можно настроить как вам хочется. А вообще всегда делаю, что бы при входе на сайт, вызывался метод API, который проверяет токен, и в случае если проверка пройдена успешно, то делается refresh

Проверка уровней доступа на нескольких уровнях?

На каких нескольких?

Передача токена в заголовках?

А почему нет? Можно и в куках, можно и через хедер.

Исходя из вашей статьи вы разрабатываете сайты, то есть токен хранится на фронте.
Если да, то токены должны храниться только в куках с HTTP/Secure only.

Все именно так и происходит.

А если по сути, то статья не со всем по JWT и работу с access/refresh токенами. Статья про то, как пробросить авторизованного юзера в метод контроллера.

Information

Rating
Does not participate
Registered
Activity