Size: a a a

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

2021 September 07

ОЛ

Олег Линьков... in GraphQL — русскоговорящее сообщество
Стоит по документации посмотреть, скорее всего у них есть переменные окружения, либо там можно кастом сборку делать
источник

Л

Лена in GraphQL — русскоговорящее сообщество
При попытке установить uri используя переменные окружения - во время билда выскакивает ошибка "Only absolute URLs are supported"
источник

ОЛ

Олег Линьков... in GraphQL — русскоговорящее сообщество
У вас есть прикрепленный домен, попробуйте с ним. У vercel/zeit есть болерплейты, скорее всего там есть ответ по окружению
источник
2021 September 08

М

Михаил in GraphQL — русскоговорящее сообщество
Подскажите, пожалуйста, как сформировать запрос, что-бы в переименованное поле помещалось значение вложенного поля?
источник

P@

Pavel @nodkz in GraphQL — русскоговорящее сообщество
Никак языком запроса этого не сделать. Поломаются АСТ разборы под капотом, поэтому этой фичи можно даже и не ждать.

Можете бэкендера попробовать попросить завести поле в родительском типе. Он может и согласится, а может и нет, если дорого получать эти данные.
источник

ОЛ

Олег Линьков... in GraphQL — русскоговорящее сообщество
Тут реально проблема проектирования данных со стороны бека и только
источник

М

Михаил in GraphQL — русскоговорящее сообщество
Спасибо за ответы! хотел выяснить - реализуемо ли это языком запросов, без правок на бэке
источник

А

Андрей in GraphQL — русскоговорящее сообщество
Подскажите плиз, при запуске бека, необходимо сделать запрос на левый апи и после записать данные в мою бд. Как это лучше реализовать с помощью аполло сервер?
Пока вижу вариант просто запуска моей функции и сейв данных, но может есть получше способы?
источник

ОЛ

Олег Линьков... in GraphQL — русскоговорящее сообщество
apollo server это мидлвара над http, ничего не мешает вам сделать кастомный запрос при старте, а потом стартовать сервер
источник

А

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

AB

Aleksandr Bukhalo in GraphQL — русскоговорящее сообщество
Оно и так медленное дальше некуда, опасно туда такое завозить
источник

ОЛ

Олег Линьков... in GraphQL — русскоговорящее сообщество
Медленно только изза строгости схемы и приведения к схеме. jit частично решает эти проблемы :)
источник

ОЛ

Олег Линьков... in GraphQL — русскоговорящее сообщество
Разница прям очень сильная тем не менее
источник

ОЛ

Олег Линьков... in GraphQL — русскоговорящее сообщество
Starting introspection
graphql-js x 1,155 ops/sec ±1.55% (215 runs sampled)
graphql-jit x 5,961 ops/sec ±5.34% (216 runs sampled)
Starting fewResolvers
graphql-js x 14,313 ops/sec ±1.43% (224 runs sampled)
graphql-jit x 409,587 ops/sec ±1.08% (216 runs sampled)
Starting manyResolvers
graphql-js x 13,201 ops/sec ±1.50% (216 runs sampled)
graphql-jit x 229,025 ops/sec ±1.18% (216 runs sampled)
Starting nestedArrays
graphql-js x 108 ops/sec ±1.30% (216 runs sampled)
graphql-jit x 1,317 ops/sec ±2.38% (213 runs sampled)
Done in 141.94s.
источник
2021 September 09

SK

Sergey Kucherenko in GraphQL — русскоговорящее сообщество
при запуске кодегена получаю ошибку -
src/graphql/generated/graphql.tsx
   TypeError: Cannot read property 'name' of undefined

Никто не встречал?
источник

ОЛ

Олег Линьков... in GraphQL — русскоговорящее сообщество
Тип для name указан?
источник

SK

Sergey Kucherenko in GraphQL — русскоговорящее сообщество
нету такого)))
источник

SK

Sergey Kucherenko in GraphQL — русскоговорящее сообщество
уже связался с поддержкой codegen
будем разбираться
спасибо
источник

AM

Artem Maslikov in GraphQL — русскоговорящее сообщество
всем привет :)
возможно кто-то подскажет по логике работы graphql-java либы
в общем, библиотека из коробки базово работает с ошибками согласно graphql-протоколу - если они случаются, либа пишет в errors и отдаёт 200 (например, мы написали невалидный query, или ещё что-то случилось).
однако есть случаи, когда либа кидает GraphQLException (обёртка над RuntimeException), и при этом эксепшн не ловится/не обрабатывается библиотекой - и если не прописать уже свой сервисный код, чтобы словить их и добавить в errors, по понятным причинам клиент будет получать 500, хотя кажется ожидаемое поведение было бы получить эти ошибки в errors, согласно протоколу.
https://www.graphql-java.com/documentation/v13/exceptions/ - я про эту категорию ошибок, по крайней мере часть из них .

Как пример - UnknownOperationException . Формируем ExecutionInput:
ExecutionInput executionInput = ExecutionInput.newExecutionInput()
     .query(query)
     .operationName(operationName);
    .build();
И после этого кидаем, например, такой запрос:
{"query": "query {
 someField
}",
"operationName": "someOperationName"

указав явно в поле "operationName" , но при этом не указав (или указав неправильный) operationName после query, как тут:

{"query": "query someOperationName {
 someField
}",
"operationName": "someOperationName"


Ну и в первом случае кинется GraphQLException.

Вопрос - кто-нибудь сталкивался с таким поведением? Почему так, в чём задумка для конкретно таких ошибок кидать рантайм эксепшны и не обрабатывать их либой?
источник

𝘂

𝘂𝘅𝗻𝗮𝗺𝗲... in GraphQL — русскоговорящее сообщество
ну 200 и 500 ошибки это ошибки на разных уровнях стека (200 ошибка на уровне приложения, 500 на уровне http сервера, по крайней мере в js/ts так), тут наверное не стоит их в одну объединять. Это как ошибка на уровне wifi, инетернета нет. и на уровне youtube (видео не грузятся). результат один (видос не посмотреть), но по сути ошибки разные. Лучше написать свой обработчик таких ошибок и реагировать на них. Как что происходит на java не знаю
источник