Size: a a a

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

2018 July 02

IA

Ilya Agarkov in GraphQL — русскоговорящее сообщество
Niko lai
А кто-нибудь использует хэширование GraphQL-запросов, типа каждый запрос с фронта при сборке отображается в uid, который на сервере маппится в нужный реквест схемы?
Фейсбук)
источник

KL

Klim Lyapin in GraphQL — русскоговорящее сообщество
Если я возвращаю в своем написанном middleware JsonResponce, то у меня перестает работать доки и автоподсказки
источник

KL

Klim Lyapin in GraphQL — русскоговорящее сообщество
Как пофиксить?
источник

KL

Klim Lyapin in GraphQL — русскоговорящее сообщество
К сожалению я не могу в middleware сделать raise GraphQLError("error")
источник

Nl

Niko lai in GraphQL — русскоговорящее сообщество
Ilya Agarkov
Фейсбук)
Что-то не могу найти ни одного нормального OpenSource-решения — или хотя бы гайда
источник

АР

Алексей Родионов in GraphQL — русскоговорящее сообщество
Niko lai
Что-то не могу найти ни одного нормального OpenSource-решения — или хотя бы гайда
источник

Nl

Niko lai in GraphQL — русскоговорящее сообщество
Это немножко не то, мне кажется, у GraphQL есть проблема с безопасностью в виде возможности создания открытых запросов со стороны пользователя

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

Кажется, FB делает именно так?
источник

АР

Алексей Родионов in GraphQL — русскоговорящее сообщество
Судя по этой картинке, используется хэш.
источник

АР

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

АР

Алексей Родионов in GraphQL — русскоговорящее сообщество
(Ох как отобразилось из-за прозрачного фона 😀)
источник

АР

Алексей Родионов in GraphQL — русскоговорящее сообщество
Вопрос лишь в том, что именно вам нужно. В статье речь идёт о хеше с целью ускорения.
источник

p

petyappetrov in GraphQL — русскоговорящее сообщество
Niko lai
А кто-нибудь использует хэширование GraphQL-запросов, типа каждый запрос с фронта при сборке отображается в uid, который на сервере маппится в нужный реквест схемы?
это apollo 2 умеет делать
источник

АР

Алексей Родионов in GraphQL — русскоговорящее сообщество
petyappetrov
это apollo 2 умеет делать
Я скинул выше как раз ссылку на статью про apollo-server@2. )
источник

Nl

Niko lai in GraphQL — русскоговорящее сообщество
Там следующая картинка показывает, что если хэш на сервере не найден, фронт присылает запрос целиком, и потом он сохраняется в хэш
источник

Nl

Niko lai in GraphQL — русскоговорящее сообщество
Но мне бы хотелось, чтобы фронт мог присывать только некий заданный при компиляции пулл запросов-хешей
источник

АР

Алексей Родионов in GraphQL — русскоговорящее сообщество
Niko lai
Это немножко не то, мне кажется, у GraphQL есть проблема с безопасностью в виде возможности создания открытых запросов со стороны пользователя

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

Кажется, FB делает именно так?
Вообще, API нужно защищать, чтобы абы кто всё подряд не мог писать и читать. Есть инструменты для этого. Например, GraphQL Shield (https://github.com/maticzav/graphql-shield).
источник

Nl

Niko lai in GraphQL — русскоговорящее сообщество
Алексей Родионов
Вообще, API нужно защищать, чтобы абы кто всё подряд не мог писать и читать. Есть инструменты для этого. Например, GraphQL Shield (https://github.com/maticzav/graphql-shield).
Ну это-то да, у нас пермишены на уровне JWT и микросервисов
источник

Nl

Niko lai in GraphQL — русскоговорящее сообщество
Niko lai
Но мне бы хотелось, чтобы фронт мог присывать только некий заданный при компиляции пулл запросов-хешей
А это бы уберегло сразу и от рекурсивных запросов, и от слишком сложных по нагрузке, и от костылей на ограничение лимита, и вообще радость-счастье-пони
источник

АР

Алексей Родионов in GraphQL — русскоговорящее сообщество
А так любой может через graphql introspection посмотреть что умеет твоё API и составить о нём представление.
источник

Nl

Niko lai in GraphQL — русскоговорящее сообщество
Да, это меня и беспокоит, с хэшами и это бы ушло
источник