使用graphene,客户端发送graphql请求时,如何拦截+内省post数据?
Using graphene, when sending a graphql request with a client, how can I intercept + introspect post data?
使用石墨烯,当向客户端发送出站 graphql 请求时,如何拦截+内省查询参数和 post 数据?
- 此请求从一个后端服务转到另一个后端服务
- 两个查询和突变都通过 POST
发送
我的用例是我需要对数据有效载荷(dict)进行加密签名,但为此我需要石墨烯来完成将查询转换为 GET 或将突变转换为 POST在我可以从查询参数或 post body.
中获取数据之前
签署请求所需的输入数据是字典:
data = {
"operationName": "blah",
"variables": {},
"query": "fancy graphql query here"
}
本次请求数据:
- 调用时可用 client.execute
- 在石墨烯中间件中不完全可用,因为我们无法访问解析信息中查询的字符串值(至少在测试客户端中)
因此,唯一可以访问这些输入的地方是在调用 client.execute 之前,或者通过制作自定义版本的客户端 class,实现执行方法,烘焙登录在那里,然后调用 super().execute...
使用石墨烯,当向客户端发送出站 graphql 请求时,如何拦截+内省查询参数和 post 数据?
- 此请求从一个后端服务转到另一个后端服务
- 两个查询和突变都通过 POST 发送
我的用例是我需要对数据有效载荷(dict)进行加密签名,但为此我需要石墨烯来完成将查询转换为 GET 或将突变转换为 POST在我可以从查询参数或 post body.
中获取数据之前签署请求所需的输入数据是字典:
data = {
"operationName": "blah",
"variables": {},
"query": "fancy graphql query here"
}
本次请求数据:
- 调用时可用 client.execute
- 在石墨烯中间件中不完全可用,因为我们无法访问解析信息中查询的字符串值(至少在测试客户端中)
因此,唯一可以访问这些输入的地方是在调用 client.execute 之前,或者通过制作自定义版本的客户端 class,实现执行方法,烘焙登录在那里,然后调用 super().execute...