python - 如何从 gRPC 客户端获取状态代码 OK 响应

标签 python grpc

当 python 响应成功时,我尝试从 gRPC 中的客户端获取状态代码。与执行 response.status_code == 200 时的 REST API 类似。我需要断言这是一次成功的调用

我尝试通过这样做来解压响应。这是代码结构,不是实际的

reposonse, metadata, code = stub.{Mygrpc}(request, metada)

print(code)

但我只需要获取Python中的状态代码。

response = onboarding_stub.AnswerEmailChallenge(request=answer_email_request,
                                                    metadata=[('authorization', get_token)])

我希望看到 grpc.Status_code.OK 在该调用的控制台中显示。我不知道使用哪个包中的哪个函数来获取状态代码。

最佳答案

引发 grpc.RpcError 来指示不正常的 grpc 状态代码。您可以捕获异常并打印状态代码。

try:
    response = onboarding_stub.AnswerEmailChallenge(request=answer_email_request,
        metadata=[('authorization', get_token)])
except grpc.RpcError as e:
    print(e.code())
else:
    print(grpc.StatusCode.OK)

关于python - 如何从 gRPC 客户端获取状态代码 OK 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57306467/

相关文章:

c++ - 获取从 grpc 客户端传输的二进制数据

go - 如何使用类型 func(*dialOptions)

php - var_dump() 不适用于 gRPC Protobuf 类的实例

Python - 仅压缩包含数据的列表

python - numpy数组的可变大小

python - 双变量 if 语句不起作用

go - 如何在流拦截器中访问请求?

python argparse : allow unregistered arguments

python - 使用 __init__ 函数来初始化 Python 中的对象

ssl - gRPC SSL 不存在主题备用名称