跳转到主要内容

与GraphQL API交互时的有用功能

项目描述

https://circleci.com/gh/Mergifyio/graphql-utils.svg?style=svg Mergify Status

The graphql-utils Python包是一组用于与GraphQL库交互的实用函数。它旨在不依赖任何特定库,因此应该与您想要的任何库或协议一起工作。

使用方法

多请求

多请求模块允许您多次发送具有不同参数的请求。它还支持分页,确保您将获得所有发送请求的结果。

示例

import requests

from graphql_utils import multi

def requests_api(query):
    return requests.post("https://myapi.com/graphql", json=query)

userlist = (
    {"login": "jd"},
    {"login": "sileht"},
    {"login": "foo"},
    {"login": "bar"},
)

result_iterator = multi.multi_query("""
    user(login: "{login}") {{
      pets(first: 100{after}) {{
        nodes {{
          name
        }}
        pageInfo {{
          hasNextPage
          endCursor
        }}
      }}
    }}""",
    iterable=userlist,
    pageinfo_path=("pets", "pageInfo"),
    send_fn=requests_api,
)

这将发送一个包含4个查询的GraphQL请求(每个来自userlist中的一个用户)。由于指定了pageinfo_path,如果任何查询在一个请求中不返回所有信息,将自动发送一个新的使用endCursor的查询以获取下一结果。

项目详情


下载文件

下载适合您平台的文件。如果您不确定该选择哪个,请了解有关 安装包 的更多信息。

源代码分发

graphql-utils-0.4.tar.gz (7.9 kB 查看散列值)

上传时间 源代码

构建分发

graphql_utils-0.4-py3-none-any.whl (7.1 kB 查看散列值)

上传时间 Python 3

由以下组织支持