Рубрики
Без рубрики

Топ 3 библиотеки Python для GraphQL

Этот пост является сводным путем лучших библиотек Python для GraphQL. Python в последние годы начинается … Теги с WebDev, начинающими, Python, Showdev.

Этот пост является сводным путем лучших библиотек Python для GraphQL. Python в последние годы начинает быть в списке верхнего языка программирования. GraphQL возникает, но очень многообещающий язык запросов и казни, привязанный к любому бэкэнду.

Python – один из самых популярных языков, используемых в науке о данных, машинном обучении и системах AI. GraphQL был представлен Facebook в качестве альтернативы для отдыха, и он популярен от гибкости на обработке сложных систем.

Ariadne – это библиотека Python для внедрения серверов GraphQL с использованием схемы-первого подхода.

Mirumee/Ariadne.

Ariadne – это библиотека Python для внедрения серверов GraphQL с использованием схемы-первого подхода.

Ariadne – библиотека Python для реализации Graphql серверы.

  • Схема-первая: Ariadne позволяет разработчикам Python использовать схему – первый подход к реализации API. Это ведущий подход, используемый сообществом GraphQL и поддерживается десятками инструментов разработчиков Frontend и Backend, примерами и учебными ресурсами. Ariadne делает все это немедленно доступно для ваших и других членов вашей команды.
  • Просто: Ariadne предлагает небольшой, последовательную и легко запоминать API, который позволяет разработчикам сосредоточиться на бизнес-проблемах, а не котельной.
  • Открыть: Ариадна спроектирована как модульная и открытая для настройки. Если вы отсутствуете или недовольны чем-то, продлите или легко поменяйте своими собственными.

Документация доступна здесь Отказ

Функции

  • Просто, быстро учиться и легко запоминать API.
  • Совместимость с graphql.js версия 14.4.0.
  • Запросы, мутации и типы ввода.
  • Асинхронные резольвенторы и выполнение запроса.
  • Подписки.
  • Пользовательские скаляры, врача и директивы схемы.
  • Профсоюзы и интерфейсы.
  • Загрузка файлов.

Ariadne – библиотека Python для внедрения серверов GraphQL.

  • Схема – сначала: Ariadne позволяет разработчикам Python использовать схему – первый подход к реализации API. Это ведущий подход, используемый сообществом GraphQL и поддерживается десятками инструментов разработчиков Frontend и Backend, примерами и учебными ресурсами. Ariadne делает все это немедленно доступно для ваших и других членов вашей команды.
  • Простой: Ariadne предлагает небольшой, последовательную и легко запоминать API, который позволяет разработчикам сосредоточиться на бизнес-проблемах, а не котельной.
  • Открыто: Ariadne была разработана для модульной и открытой для настройки. Если вы отсутствуете или недовольны чем-то, продлите или легко поменяйте своими собственными. Документация доступна здесь.

Функции

  • Просто, быстро учиться и легко запоминать API.
  • Совместимость с Graphql.js Версия 14.0.2.
  • Запросы, мутации и типы ввода.
  • Асинхронные резольвенторы и выполнение запроса.
  • Подписки.
  • Пользовательские скалярные и перечисленные.
  • Профсоюзы и интерфейсы.
  • Определение схемы с использованием строк SDL.
  • Схема загрузки из файлов .graphql.
  • Промежуточное программное обеспечение WSGI для реализации GraphQL в существующих сайтах.
  • Опциональные автоматические резольверы сопоставлены между камерой и Snake_Case.
  • Встроенный простой синхронный Dev Server для быстрого эксперимента GraphQL и игровой площадки GraphQL.
  • Поддержка расширения Apollo GraphQl для Visual Studio Code.
  • Проверка синтаксиса GraphQL через функцию HQL (). Также предоставляет окраска, если установлено расширение Apollo GraphQl.

Установка

pip install ariadne

Быстрый старт

В следующем примере создается API, определяющий тип человека и единомодающие полевые люди, возвращающие список двух человек. Он также запускает локальный DEV-сервер с игровой площадкой GraphQL, доступной на http://127.0.0.1:8000 адрес. Начните с установки UVICORN, сервер ASGI мы будем использовать для обслуживания API:

Начните с установки UVICORN, сервер ASGI мы будем использовать для обслуживания API:

pip install uvicorn

Затем создайте файл Prime.py для вашего примера приложения:

from ariadne import ObjectType, QueryType, gql, make_executable_schema
from ariadne.asgi import GraphQL

# Define types using Schema Definition Language (https://graphql.org/learn/schema/)
# Wrapping string in gql function provides validation and better error traceback
type_defs = gql("""
    type Query {
        people: [Person!]!
    }

    type Person {
        firstName: String
        lastName: String
        age: Int
        fullName: String
    }
""")

# Map resolver functions to Query fields using QueryType
query = QueryType()

# Resolvers are simple python functions
@query.field("people")
def resolve_people(*_):
    return [
        {"firstName": "John", "lastName": "Doe", "age": 21},
        {"firstName": "Bob", "lastName": "Boberson", "age": 24},
    ]


# Map resolver functions to custom type fields using ObjectType
person = ObjectType("Person")

@person.field("fullName")
def resolve_person_fullname(person, *_):
    return "%s %s" % (person["firstName"], person["lastName"])

# Create executable GraphQL schema
schema = make_executable_schema(type_defs, [query, person])

# Create an ASGI app using the schema, running in debug mode
app = GraphQL(schema, debug=True)

Clobberry-GraphQL/клубника

Новая библиотека GraphQL для Python 🍓

Библиотека Python GraphQl на основе Dataclasses

Установка

Установить с:

pip install strawberry-graphql

Начиная

Создайте файл под названием app.py со следующим кодом:

import strawberry
@strawberry.type
class User
    name: str
    age: int
@strawberry.type
class Query:
    @strawberry.field
    def user(self, info) -> User:
        return User(name="Patrick", age=100)


schema = strawberry.Schema(query=Query)

Это создаст схему GraphQL, определяющую Пользователь Тип и одно поле запроса Пользователь Это вернет жесткозедированный пользователь.

Для запуска сервера Debug запустите следующую команду:

strawberry server app

Откройте сервер отладки, нажав на следующую ссылку: http://0.0.0.0:8000/graphql

Это откроет Graphiql, где вы можете проверить API.

Тип проверки

Клубника поставляется с Marpy Плагин, который обеспечивает проверку статической проверки вашего GraphQL …

Клубника – это новая библиотека GraphQL для Python 3, вдохновленная Dataclasses. Начальная версия клубники была выпущена на Github. Клубника была создана @ patrick91, который также является организатором @pyconit. Первоначально он был объявлен во время Python Pizza Berlin.

https://strawberry.rocks/

Установка

pip install strawberry-graphql

Начиная

Создайте файл под названием App.py со следующим кодом:

import strawberry


@strawberry.type
class User:
    name: str
    age: int


@strawberry.type
class Query:
    @strawberry.field
    def user(self, info) -> User:
        return User(name="Patrick", age=100)


schema = strawberry.Schema(query=Query)

Это создаст схему GraphQL, определяющую тип пользователя и пользователь полей одного запроса, который вернет жесткий пользователь.

Для запуска сервера Debug запустите следующую команду:

strawberry run server app

Откройте сервер отладки, нажав на следующую ссылку: http://0.0.0.0:8000/graphql

Это откроет игровую площадку GraphQL, где вы можете проверить API.

graphql-python/графен

Frameworks Framework для Python

💬 Присоединяйтесь к сообществу

Мы ищем участников Действительно Пожалуйста, проверьте Дорожная карта Чтобы увидеть, как вы можете помочь ❤. ️

Ниже readme – это документация для дев (Пререесть) версия графена. Для просмотра документации для последней стабильной версии графена Перейти к V2 документы

Вступление

Графен Является ли явная библиотека Python для построения схем GraphQL/типов быстро и легко и легко.

  • Простота в использовании: Графен помогает вам использовать GraphQL в Python без усилий.
  • Реле: Графен построил в поддержку реле.
  • Данные агностики: Графен поддерживает любой вид источника данных: SQL (Django, SQLAlchemy), NOSQL, пользовательские объекты Python и т. Д. Мы считаем, что, предоставив полный API, вы можете подключить графен где угодно свои данные, и сделайте ваши данные доступными через GraphQL.

Интеграция

Графен имеет несколько интеграций с различными каркасами:

графен-джанго Django
Графена-SQLALCHEY Sqlalchemy
графен-gae. Google App Engine

Кроме того, графен полностью совместим с …

Графен – библиотека Python для построения схем/типов Graphql Fast и легко.

  • Простота в использовании: графен помогает вам использовать GraphQL в Python без усилий.
  • Реле: графен встроен в поддержку реле.
  • Данные Agnostic: Graphene поддерживает любой вид источника данных: SQL (Django, SQLAlchemy), NoSQL, пользовательские объекты Python и т. Д. Мы полагаем, что, предоставив полный API, вы можете подключить графен где угодно свои данные, и сделать ваши данные доступными через GraphQL.

Интеграция

Графен имеет несколько интеграций с различными каркасами:

  • Django – Graphene-Django
  • SQLALCHEMY – ГРАФЕНТ-SQLALCHEMY
  • Google App Engine – Graphene-Gae
  • Peewee – в процессе (проблема отслеживания)

Кроме того, Graphene полностью совместим с SPECKQL SPECT, работая без проблем со всеми клиентами GraphQL, такими как реле, Apollo и GQL.

Установка

Для установки графена просто запустите эту команду в оболочке

pip install "graphene>=2.0"

Примеры

Here is one example for you to get started:

class Query(graphene.ObjectType):
    hello = graphene.String(description='A typical hello world')

    def resolve_hello(self, info):
        return 'World'

schema = graphene.Schema(query=Query)

Затем запрос графена. Схема так же просто, как:

query = '''
    query SayHello {
      hello
    }
'''
result = schema.execute(query)

Оригинал: “https://dev.to/robmatyszewski/top-3-python-libraries-for-graphql-4d5p”