我正在寻找压缩GraphQL查询/响应以通过MQTT发送它的标准方法。
我在想一些可以:
\n
,\r
); 我看了一下Graphene和其他GraphQL模块的Python,但我还没找到我想要的东西。
是否有我缺少的术语或者这是我不应该做的事情?
答案 0 :(得分:3)
在Python中压缩GraphQL查询的最简单方法是:
import shlex
query_with_strings = """
query someQuery {
Field(
search: "string with spaces"
) {
foo
}
}
"""
def compress_graphql(q):
"""Compress a GraphQL query by removing unnecessary whitespace.
>>> compress_graphql(query_with_strings)
u'query someQuery { Field( search: "string with spaces" ) { foo } }'
"""
return u' '.join(shlex.split(q, posix=False))
这假设所有查询都已经是unicode
(Python 2)或str
(Python 3)对象。
运行doctest将通过。