Size: a a a

GraphQL — русскоговорящее сообщество

2019 August 06

m^

mcombat ^-^ in GraphQL — русскоговорящее сообщество
есть графкл файл с фрагментами
#import "./author.fragment.graphql"

fragment PageData on Page {
 lastUpdated
 content
 title
}

fragment PageDataWithAuthor on Page {
 ...PageData
 ...AuthorData
}
источник

m^

mcombat ^-^ in GraphQL — русскоговорящее сообщество
#import '../products/page.fragment.graphql'

query companyStaticPageQuery($slug: String!) {
 pageBySlug(slug: $slug) {
   ...PageData
 }
}

сервер выкидывает ошибку
[GraphQL error]: Message: Fragment "PageDataWithAuthor" is never used., Location: [object Object], Path: undefined
[GraphQL error]: Message: Fragment "AuthorData" is never used., Location: [object Object], Path: undefined
источник

U

Uxname in GraphQL — русскоговорящее сообщество
ну всё верно
источник

m^

mcombat ^-^ in GraphQL — русскоговорящее сообщество
тоесть один файл  - один фрагмент?
источник

U

Uxname in GraphQL — русскоговорящее сообщество
файлы тут ни при чём
источник

m^

mcombat ^-^ in GraphQL — русскоговорящее сообщество
я про решени е
источник

U

Uxname in GraphQL — русскоговорящее сообщество
в тексте ошибки написана ошибка, я хз что добавить)
источник

m^

mcombat ^-^ in GraphQL — русскоговорящее сообщество
ну спасибо что подметил. что в тексте ошибка)
источник

m^

mcombat ^-^ in GraphQL — русскоговорящее сообщество
короче все что можно сделать это вынести первый фрагмент в отдельный файл?
источник
2019 August 07

YP

Yevhenii Ponomar in GraphQL — русскоговорящее сообщество
Доброй ночи. Подскажите нубу

Пробую на практике apollo-gateway, все отлично.
Есть у меня сервис для работы с кодами подтвердения почты, и отдельный сервис для учета аккаунтов.

Когда сервис подверждения, проверяет код, он удаляет код подтвержения, и публикует ивент.

Вопрос, куда положить код котрый подпишется на события и будет менять статус аккаунта когда ловит ивент о успешном подтверждении почты.

1. Рядом с кодом который отдает аккаунты в graphql-api как часть apollo-federation, там уже есть модельки и доступ к базе.

2. отдельным проектом
2.1 вызывать методы из части распределенной схемы
2.2 на прямую менять данные аккаунта

3..?
источник

АР

Алексей Родионов in GraphQL — русскоговорящее сообщество
источник

OG

Oleg Gamega in GraphQL — русскоговорящее сообщество
Yevhenii Ponomar
Доброй ночи. Подскажите нубу

Пробую на практике apollo-gateway, все отлично.
Есть у меня сервис для работы с кодами подтвердения почты, и отдельный сервис для учета аккаунтов.

Когда сервис подверждения, проверяет код, он удаляет код подтвержения, и публикует ивент.

Вопрос, куда положить код котрый подпишется на события и будет менять статус аккаунта когда ловит ивент о успешном подтверждении почты.

1. Рядом с кодом который отдает аккаунты в graphql-api как часть apollo-federation, там уже есть модельки и доступ к базе.

2. отдельным проектом
2.1 вызывать методы из части распределенной схемы
2.2 на прямую менять данные аккаунта

3..?
хороший вопрос но никакого отношения к graphl не имеет, у меня сейчас в проекте есть схожее место (как наверное и в 90% проектов) - это зависит от вашей архитектуры, вашего проекта
источник

OG

Oleg Gamega in GraphQL — русскоговорящее сообщество
у меня по самым оптимистичным прогнозам нагрузка в 20000 в день будет не раньше чем через полгода год (b2b сегмент) мне нет смысла оптимизировать это раньше времени поэтому пока это просто отдльный слой логики service - будет ли у вас это как то разнесено дальше зависит только от вас и от ваших задач
источник

OG

Oleg Gamega in GraphQL — русскоговорящее сообщество
у меня например пока только парочка заготовк под микросервисы но релаьно все монолит, будет нужно вынесится
источник

OG

Oleg Gamega in GraphQL — русскоговорящее сообщество
если сроки не жмут и сразу все хочется делать красиво можно конечно заюазать ту же lerna и подобные вещи сразу выносить в отдльный модуль - но нужно ли это вам на жанныом этапе ?
источник

VA

Veaceslav Artiom in GraphQL — русскоговорящее сообщество
Добрый день, ребят а может кто-то подсказать как бы мне в persistentCache ТОЛЬКО вставлять данные или обновлять ? Идея такая что я хочу этот кэш использовать для воркера, и получается что после захода с одной категорий на другую, у меня остаются данные только последней, а хотелось бы сохранять и прев. категорию, тем саммым я дам возможность пользователю использовать сайт, даже когда у него нету инета.
источник

YP

Yevhenii Ponomar in GraphQL — русскоговорящее сообщество
Oleg Gamega
если сроки не жмут и сразу все хочется делать красиво можно конечно заюазать ту же lerna и подобные вещи сразу выносить в отдльный модуль - но нужно ли это вам на жанныом этапе ?
Спасибо за ответ, я с помощью lerna и делаю, и по своему предыдущему опыту, не сказал бы что сложнее, или занимает больше времени.

apollo-gateway подталкивает к определенной архитектуре, да и graphql создан для решения проблем "миросервисной" архитектуры, но умные книжки про микросервисы и CQRS както очень далеки от моей реальности топорных функций на nodejs.

В доке упоминают о том как передавать контекст на учасников федерации, я вот подозреваю что может есть не известные для меня практики...
Например экспортировать dataSources для реюза в других модулях или импортровать их из общего модуля.

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

OG

Oleg Gamega in GraphQL — русскоговорящее сообщество
не работал с apollo-gateway для меня в первую очередь graphql это удобный транспорт  и типизация апи
источник

OG

Oleg Gamega in GraphQL — русскоговорящее сообщество
которая руганется на несоответвие клиента и сервера на этапе разработки а не на проде
источник

YP

Yevhenii Ponomar in GraphQL — русскоговорящее сообщество
вот с этим тоже помогает, гейт, ругается и не дает собрать кривую схему с разных сервисов, на это и надежда
источник