Я пытаюсь выполнить запрос GraphQL, который содержит некоторые переменные, с помощью клиента apollo-boost
на сервере Flask + Flask-GraphQL + Graphene.
let data = await client.query({
query: gql`{
addItemToReceipt(receiptId: $receiptId, categoryId: $categoryId, value: $value, count: $count) {
item {
id
category { id }
value
count
}
}
}`,
variables: {
receiptId: this.id,
categoryId: categoryId,
value: value,
count: mult
}
})
Но я получаю "Переменная X не являетсяопределены "ошибки.
[GraphQL error]: Message: Variable "$receiptId" is not defined., Location: [object Object],[object Object], Path: undefined
[GraphQL error]: Message: Variable "$categoryId" is not defined., Location: [object Object],[object Object], Path: undefined
[GraphQL error]: Message: Variable "$value" is not defined., Location: [object Object],[object Object], Path: undefined
[GraphQL error]: Message: Variable "$count" is not defined., Location: [object Object],[object Object], Path: undefined
[Network error]: Error: Response not successful: Received status code 400
Я добавил несколько отладочных отпечатков к graphql_server/__init__.py
# graphql_server/__init__.py:62
all_params = [get_graphql_params(entry, extra_data) for entry in data]
print(len(all_params))
print(all_params[0])
# ...
Но из полученного вывода все вроде бы в порядке.graphql_server.run_http_query()
получает все переменные.
GraphQLParams(query='{\n addItemToReceipt(receiptId: $receiptId, categoryId: $categoryId, value: $value, count: $count) {\n item {\n id\n category {\n id\n __typename\n }\n value\n count\n __typename\n }\n __typename\n }\n}\n', variables={'receiptId': '13', 'categoryId': 'gt', 'value': 0, 'count': 0}, operation_name=None)
Что я делаю не так?