# GraphQL

GraphQL - это протокол структурирования доступа к данным предоставляющим большую гибкость разработчикам front-end (не нужно постоянно модифицировать серверные end-points при незначительных изменениях структуры клиентских запросов). \
\
Рекомендуется избегать использования GraphQL как замена REST если он не согласуется с целями проекта.\
\
**Недостатки GraphQL**

* GraphQL не подходит для возврата файлов, бинарных потоков.
* Возможность сформировать тяжелый запрос со стороны пользователя и таким образом повлиять на стабильность сервера (DoS)
* Усложнение контроля над границами запросов пользователя.

**Дополнительные источники**

* [Рализация GraphQL в Node ](https://medium.com/free-code-camp/graphql-zero-to-production-a7c4f786a57b)
* [Hasura, реализация GraphQL как интерфейс доступа к PostgreSQL](https://hasura.io/)
