Такое ощущение что вы делаете rest api на graphql, такой дикой реализации я еще не видел
@ITKAMASUTRA9 ай бұрын
GraphQL не освобождает от архитектурного качественного разделения. Особенно для command. А вот query он должен конечно же упростить, но в видео вопрос это не поднимали, в следующий раз глянем. А что на ваш взгляд здесь не так и где нарушаются правила работы с graphQL?
@ИванТолкачев-щ3м9 ай бұрын
Что смущает?
@SpektRProduction9 ай бұрын
@@ITKAMASUTRA Как минимум странное поведение при обновлении полей, а если я хочу обновить одно поле, например, имя, мне получается создавать новую мутацию для обновления имени? Работа с валидацией странная, а если тип не тот пришел , а если длинна больше чем надо.GraphQL позволяет валидировать типы и их "обязательность" на уровне SDL, что можно контролить во время выполнения. Запрос GraphQL проверяется, чтобы убедиться, что он соответствует схеме. Мы проверяет, доступны ли запрошенные поля в схеме и переданы правильные переменные и это делается не в каждом резолвере. Интересно будет смотреть как вы будете работать с авторизацией и разделением схемы, когда у вас в одной сущности будет разный ответ (доступ к определенным полям может быть закрыт), для разных пиршишеннов, часть схемы будет не доступна для опредеденной роли (403 ответ), будет публичная часть (например, вход в систему), а остальная доступна для авторизованных пользователей и тд и тп
@SpektRProduction9 ай бұрын
@@ITKAMASUTRA Как минимум странное поведение при обновлении полей, а если я хочу обновить одно поле, например, имя, мне получается создавать новую мутацию для обновления имени? Работа с валидацией странная, а если тип не тот пришел , а если длинна больше чем надо.GraphQL позволяет валидировать типы и их "обязательность" на уровне SDL, что можно контролить во время выполнения. Запрос GraphQL проверяется, чтобы убедиться, что он соответствует схеме. Мы проверяет, доступны ли запрошенные поля в схеме и переданы правильные переменные и это делается не в каждом резолвере. Интересно будет смотреть как вы будете работать с авторизацией и разделением схемы, когда у вас в одной сущности будет разный ответ (доступ к определенным полям может быть закрыт), для разных пиршишеннов, часть схемы будет не доступна для опредеденной роли (403 ответ), будет публичная часть (например, вход в систему), а остальная доступна для авторизованных пользователей и тд и тп