GraphQL - Компоненты приложения
В этой главе обсуждаются различные компоненты GraphQL и способы их взаимодействия друг с другом. Все компоненты приложения можно выделить, как показано ниже -
- Компоненты на стороне сервера
- Компоненты на стороне клиента
Компоненты на стороне сервера
Сервер GraphQL является основным компонентом на стороне сервера и позволяет анализировать запросы, поступающие от клиентских приложений GraphQL. Apollo Server - это наиболее часто используемая реализация спецификации GraphQL. Другие компоненты серверного программирования включают следующее:
Sr. No. | Основные сведения о сервере и описание |
---|---|
1 | Schema Схема GraphQL находится в центре любой реализации сервера GraphQL и описывает функции, доступные клиентам, которые к ней подключаются. |
2 | Query Запрос GraphQL - это запрос клиентского приложения для извлечения данных из базы данных или устаревших API. |
3 | Resolver Преобразователи предоставляют инструкции по преобразованию операции GraphQL в данные. Они разрешают запрос к данным, определяя функции распознавателя. |
Компоненты на стороне клиента
Ниже приведены компоненты на стороне клиента -
Sr. No. | Инструмент и описание |
---|---|
1 | GraphiQL Интерфейс на основе браузера для редактирования и тестирования запросов и изменений GraphQL. |
2 | ApolloClient Лучший инструмент для создания клиентских приложений GraphQL. Хорошо интегрируется со всеми интерфейсами javascript. |
На диаграмме ниже показан Client-Server architecture. Веб-сервер построен на платформе NodeJs и Express. Запрос к серверу Apollo GraphQL осуществляется приложением ReactJS (созданным с использованием клиентской библиотеки Apollo) или приложением браузера GraphiQL. Запрос будет проанализирован и подтвержден по схеме, определенной на сервере. Если схема запроса проходит проверку, будут выполнены связанные функции преобразователя. Резолвер будет содержать код для извлечения данных из API или базы данных.