Size: a a a

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

2020 September 27

ОЛ

Олег Линьков... in GraphQL — русскоговорящее сообщество
Прочитайте документацию от и до. Там немного разделов, 99% вопросов отпадёт
источник

TP

Taras Postolyuk in GraphQL — русскоговорящее сообщество
Олег Линьков
Прочитайте документацию от и до. Там немного разделов, 99% вопросов отпадёт
Согласен документация лучший ресурс, я читал уже по graphql но по аполло нет
источник
2020 September 28

L

LORD in GraphQL — русскоговорящее сообщество
мужики направите? мне нужно вернуть несколько моделей за раз. Т.е. тип для квери который содержит разные поля-модели
источник

JB

Joe Beretta in GraphQL — русскоговорящее сообщество
LORD
мужики направите? мне нужно вернуть несколько моделей за раз. Т.е. тип для квери который содержит разные поля-модели
Гугли grapqhl directive если результатом 1го запроса может быть как 1 тип так и другой тип
источник

L

LORD in GraphQL — русскоговорящее сообщество
Joe Beretta
Гугли grapqhl directive если результатом 1го запроса может быть как 1 тип так и другой тип
спасиб
источник

L

LORD in GraphQL — русскоговорящее сообщество
ночью тож пришла идея
источник

EY

Edgar Yedigaryan in GraphQL — русскоговорящее сообщество
в GraphQL вы можете получить одно и то же поле несколько раз
пример
`query {
 мой {
  getUser {id}
  getUser1: getUser {id}
  getUser2: getUser {id}
 }
}`
Как сделать так, чтобы поле можно было брать только один раз в одном запросе ?.
источник

АР

Алексей Родионов... in GraphQL — русскоговорящее сообщество
Edgar Yedigaryan
в GraphQL вы можете получить одно и то же поле несколько раз
пример
`query {
 мой {
  getUser {id}
  getUser1: getUser {id}
  getUser2: getUser {id}
 }
}`
Как сделать так, чтобы поле можно было брать только один раз в одном запросе ?.
А зачем?
источник

EY

Edgar Yedigaryan in GraphQL — русскоговорящее сообщество
ну долго объяснять.но один из причинов то что у меня на фронте и***** работают
источник

АР

Алексей Родионов... in GraphQL — русскоговорящее сообщество
Edgar Yedigaryan
ну долго объяснять.но один из причинов то что у меня на фронте и***** работают
Ну alias'ы для того и нужны, чтобы запрашивать одно и то же поле (только с разными аргументами) в одном запросе. Это бывает иногда нужно. Запретив alias'ы вообще вы лишите себя этой возможности.

Если же alias запрашивает одно и то же поле с тем же набором аргументов, то я не уверен, создаёт ли это нагрузку на сервер? (Увеличивается лишь объём трафика, само поле второй раз вычислять не надо, но всё зависит от конкретной реализации.)

По идее, защита от malicious query attacks на стороне сервера в виде query cost/complexity analysis, которая будет вычислять сложность запросов и если она выше пороговой, выдавать ошибку, должна помочь.

Как вариант, можно ещё попытаться на клиенте в IDE или в CI прикрутить линтер запросов, который будет находить, что в запросе алиас полностью дублирует уже запрошенное поле и выдавать ошибку/предупреждение.
источник

АР

Алексей Родионов... in GraphQL — русскоговорящее сообщество
Edgar Yedigaryan
ну долго объяснять.но один из причинов то что у меня на фронте и***** работают
Тут нужно общаться с frontend-разработчиками, прививать им культуру. )

Один из способов прививать культуру как раз заключается в насильном подключении всяких линтеров, чтобы код с ошибками и предупреждениями нельзя было покоммитить в git. )
источник

АР

Алексей Родионов... in GraphQL — русскоговорящее сообщество
Где-то я видел линтер, который выдавал предупреждения при задвоенных полях в запросах. Но не уверен, что он настолько умный, что понимает, что алиас с тем же набором аргументов — это дубль. )
источник

EY

Edgar Yedigaryan in GraphQL — русскоговорящее сообщество
Алексей Родионов
Ну alias'ы для того и нужны, чтобы запрашивать одно и то же поле (только с разными аргументами) в одном запросе. Это бывает иногда нужно. Запретив alias'ы вообще вы лишите себя этой возможности.

Если же alias запрашивает одно и то же поле с тем же набором аргументов, то я не уверен, создаёт ли это нагрузку на сервер? (Увеличивается лишь объём трафика, само поле второй раз вычислять не надо, но всё зависит от конкретной реализации.)

По идее, защита от malicious query attacks на стороне сервера в виде query cost/complexity analysis, которая будет вычислять сложность запросов и если она выше пороговой, выдавать ошибку, должна помочь.

Как вариант, можно ещё попытаться на клиенте в IDE или в CI прикрутить линтер запросов, который будет находить, что в запросе алиас полностью дублирует уже запрошенное поле и выдавать ошибку/предупреждение.
надо поговорить с команды.но спасибо за идею 👍.
источник

S

Strayko in GraphQL — русскоговорящее сообщество
все мпривет мне в мутации надо передать символы [] както это возможно ?
источник

АР

Алексей Родионов... in GraphQL — русскоговорящее сообщество
Strayko
все мпривет мне в мутации надо передать символы [] както это возможно ?
Зачем? Переменная и так массив.
источник

S

Strayko in GraphQL — русскоговорящее сообщество
ну бэк принемает только такое значение в урле
источник

АР

Алексей Родионов... in GraphQL — русскоговорящее сообщество
Strayko
ну бэк принемает только такое значение в урле
Это что вообще на скриншоте? GraphQL query? Скинь целиком.
источник

S

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

S

Strayko in GraphQL — русскоговорящее сообщество
ну и мне собственно надо получить урл url/aplicationStates[]=var&aplicationStates[]=var2
источник

АР

Алексей Родионов... in GraphQL — русскоговорящее сообщество
Как я понял, resultList это у вас alias для поля producers, у которого 4 аргумента. Потом идёт директива @rest.
источник