Size: a a a

Software Design/Architecture/Zen

2021 April 24

SP

Sergey Protko in Software Design/Architecture/Zen
это ж не либка которая привязана к стэку
источник

DP

Dimitry Polonskiy in Software Design/Architecture/Zen
Да.
Пример на любом языке.
Просто посмотреть код.
источник

DP

Dimitry Polonskiy in Software Design/Architecture/Zen
Посмотреть как это оформляется
источник

˸A

˸̧̨ ͅBlack Akula˸̧̨ ... in Software Design/Architecture/Zen
Уточните, вам обязательно jwt? Если что, мы AWS Cognito используем (но кто ж сорцы Амазона покажет)
источник

DP

Dimitry Polonskiy in Software Design/Architecture/Zen
Ну пока что думаю JWT.
источник

SP

Sergey Protko in Software Design/Architecture/Zen
вопервых примеров использования aws cognito валом (https://github.com/search?q=aws+cognito+example)
источник

SP

Sergey Protko in Software Design/Architecture/Zen
во вторых -  оно тоже тебе jwt access token выдавать может. И ты даже можешь на своей стороне проверять (когито дает тебе jwkset с ключами).
источник

SP

Sergey Protko in Software Design/Architecture/Zen
так что не оч понятен твой вопрос
источник

SP

Sergey Protko in Software Design/Architecture/Zen
jwt это просто формат для токенов, понятный и распространенный. Почти все openid/oauth2 реализации могут его выдавать.
источник

˸A

˸̧̨ ͅBlack Akula˸̧̨ ... in Software Design/Architecture/Zen
Автор вопроса искал код самого айдентити, а не его использования. У тебя есть сорцы самого когнито Амазона? У меня нет
источник

SP

Sergey Protko in Software Design/Architecture/Zen
> Именно идентити сервис опенсурсный в каком нибудь проекте
источник

SP

Sergey Protko in Software Design/Architecture/Zen
я это уточнял если что
источник

SP

Sergey Protko in Software Design/Architecture/Zen
+ зная это странно предлагать когнито, так можно и auth0 и okta и кучу других предложить
источник

˸A

˸̧̨ ͅBlack Akula˸̧̨ ... in Software Design/Architecture/Zen
Я не предлагал. Я сказал, что мы его используем. На этом всё
источник

JD

John Doe in Software Design/Architecture/Zen
Ory, ток это IAM и на go
источник
2021 April 25

МФ

Максим Федоров... in Software Design/Architecture/Zen
Я сделал SPA для кабинета, который сидит за роутом, за Которым следит бекенд-фрейм со своей аутентификацией и авторизацией... крч использую сессию обычную

Ну у меня кейс очень простой, сервис как админка и только веб
источник

МФ

Максим Федоров... in Software Design/Architecture/Zen
Зато просто очень, учитывая что я вообще фронт не умею делать... первую штуку на ангуляре навернул (кстати очень удивлён тем, как легко и быстро ui строится)
источник

МФ

Максим Федоров... in Software Design/Architecture/Zen
Отправил http запрос на /profile и получил свою инфу
источник

AV

Alexey Vetrov in Software Design/Architecture/Zen
Есть заказ, в который мы можем добавлять позиции. У позиции могут быть дополнения. У дополнения как и у товара, есть своя цена (0 - тоже считаю ценой). Для каждого товара дополнения (!)кастомизируются. Дополнения для каждого товара ограничиваются минимальным и максимальным количеством. Отсюда получаем, что если минимальное количество больше нуля - оно обязательное.

У одного товара дополнение может быть с ограничением от 0 до 1, у другого - оно может быть с ограничением от 5 до 10, у третьего его может не быть вовсе.
Для примера у товара "телефон" - дополнение "симкарта" от 5 до 10, а у товара "планшет" от 0 до 1. У товара "ноутбук" его вовсе нет. Как пример дополнений: зарядные устройства, защитные стекла и тд.

Допустим, в заказе 2 позиции и каждая со своим дополнением. Первая - планшет Ipad Pro с дополнением "коробка от Ipad Pro". Вторая - телефон Galaxy J2 с дополнениями: "зарядное устройство Samsung" и "симкарта Tele2" в количестве 3 штук.

У меня есть сущности:
Item (id, name, availableItemAdditions) : Планшет, Ноутбук, Телефон
Addition (id, name) : Симкарта, коробка, стекло
ItemAddition (addition_id, max_amount, min_amount) : для телефона (симкарта 1-5, коробка 0-1, стекло 0-1), для планшета (симкарта 0-3, коробка 0-1), для ноутбука (коробка 0-1)


А теперь вопросы:
1) У меня сейчас товар сам знает о доступных ему дополнениях "ItemAddition". И при конструировании агрегата выбранного товара в заказе я на вход получаю Item и выбранные дополнения. Через Item я соответственно "валидирую" дополнение на минимально и максимальное количество. Если дополнения нет в доступных - я выбрасываю исключение.
2) Должен ли товар вообще знать о доступных к нему дополнениях. Или мне лучше создать условный конструктор, который на вход будет принимать товар, доступные ему дополнения и выбранные дополнения. Тогда вопрос как тут проверить то, что эти дополнения принадлежат именно этому товару? Допустим ситуация, где на вход ему поступит  (из примера выше) телефон №21 и доступные дополнения от телефона №22. Либо он сам должен внутри себя получать на вход выбранный товар и выбранные дополнениях. А внутри из условного репозитория получать по выбранному товару - доступные дополнения и уже по ним валидировать. Тогда как сам агрегат будет защищаться от инвариантов, если этим будет заниматься "Builder"?
источник

ОК

Оператор Кресла... in Software Design/Architecture/Zen
источник