Как установить Apollo Server и GraphQL?

Что такое GrapQL?

GraphQL — это язык запросов к данным. В отличие от большинства языков запросов (например, SQL), GraphQL не используется для запросов к определенному типу хранилища данных (например, к базе данных MySQL). Вместо этого GraphQL используется для запросов к данным из любого количества различных источников

Что такое Apollo Server?

Apollo Server — это сервер GraphQL с открытым исходным кодом, соответствующий спецификации и совместимый с любым клиентом GraphQL, включая Apollo Client. Это лучший способ создания готового к производству, самодокументирующегося GraphQL API, который может использовать данные из любого источника

Apollo Server

Зачем использовать Apollo Server вместе с GraphQL?

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

Введение

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

Предварительные условия
Для выполнения данного руководства вам потребуется:

  • Базовое понимание HTML, CSS и JavaScript.
  • Желателен опыт работы с более новыми технологиями фронтенда (например, React) и Git/npm.
  • Знать, как создать минимальный сервер Node/Express.
  • Знать, как включить автоматическую перезагрузку с помощью Nodemon в качестве инструмента разработки.
  • Локальная среда разработки для Node.js. Следуйте инструкциям по установке Node.js и созданию локальной среды разработки.
  • Базовые знания GraphQL будут полезны.

Проверено на Node v16.3.0, npm v8.7.0 apollo-server v2.31.1, graphql v15.4.0

Установите Apollo Server и GraphQL
Установите Apollo для создания API.
В частности, с помощью пакета Apollo Server, который является серверным пакетом в экосистеме Apollo. Apollo Server позволяет создать готовый к производству, самодокументирующийся GraphQL API в приложениях Node. Он очень прост в использовании и легко адаптируется.

Мы установим Express-вариант популярной библиотеки Apollo Server и библиотеку GraphQL JavaScript.

Apollo Server — это одна из библиотек фреймворка Apollo, которая призвана помочь в построении GraphQL API в приложениях Node. Apollo Server позволяет подключить схему GraphQL к серверу и может быть использован для создания отдельного сервера, дополнения к существующему серверу Node или даже для работы в «бессерверных» средах. В данном случае мы будем использовать Apollo Server в качестве дополнения к существующему серверу Node/Express.

Установка Apollo Server Express

Чтобы добавить Apollo Server в существующий серверный проект Node/Express, установим библиотеку apollo-server-express.

npm install apollo-server-express

Обратите внимание, что apollo-server-express — это проект на TypeScript, поэтому нам не придется устанавливать для него дополнительный файл объявления типов.

Установите GraphQL для создания API

Чтобы использовать Apollo Server, необходимо установить в приложение еще одну зависимость. Необходимо установить JavaScript-библиотеку graphql. Это связано с тем, что библиотека graphql является одноранговой зависимостью пакета Apollo Server. Кроме того, библиотека graphql будет использоваться в нашей первой попытке построить схему.
Сначала вы устанавливаете библиотеку graphql в качестве зависимости от приложения.

npm install graphql

Обратите внимание, что javascript-библиотека graphql не имеет собственных определений типов, поэтому для нее также необходимо установить дополнительный файл объявления типов в зависимости от dev приложения

npm install -D @types/graphql

Это единственные дополнительные библиотеки, необходимые для начала разработки нашей схемы GraphQL!
Чтобы запустить наш код с помощью Nodemon, достаточно ввести в терминале команду npm run start:

npm run start

Когда мы запустим сервер и перейдем к расположению нашей конечной точки GraphQL — https://localhost:9000/api, перед нами откроется IDE Sandbox для взаимодействия с вашим API!

Apollo Server Sandbox

Заключение

В этом кратком руководстве мы рассмотрели, как установить сервер GraphQL и Apollo Server, а также все дополнительные зависимости. Мы также рассмотрели, как получить доступ к песочнице A Apollo Graphql Sandbox, запустив локальный сервер nodemon.

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии