如何从 python 的 grpc 响应中获取 header

How to get header from grpc responce with python

我正在尝试使用以下代码获取 gRPC 响应的 header,但它不起作用:

response = stub.GetAccounts(users_pb2.GetAccountsRequest(), metadata=metadata)

header = response.header()

这就是 header 在 Kreya 中的样子,我正在尝试在 python 中得到它:

有谁知道如何在 python 中获得相同的 header?

我怀疑(!不知道)您无法从 (Python) gRPC 客户端访问底层 HTTP/2(响应)headers。

您可以配置各种环境变量来公开底层细节(参见 gRPC environment variables),也许 GRPC_TRACE="http" GRPC_VERBOSITRY="DEBUG"。

如果 headers 实际上是 gRPC 元数据,您可以使用 Python 的 with_callcall.initial_metadata 以及 call.trailing_metadata,如 gRPC 元数据中所示示例 here.