相关文章推荐
逼格高的铅笔  ·  比利时1991青春期男孩女孩教育片 - 抖音·  4 月前    · 
力能扛鼎的抽屉  ·  触乐夜话:无名者_腾讯新闻·  7 月前    · 
正直的刺猬  ·  交通不便成区域发展短板 ...·  8 月前    · 
想出国的钥匙扣  ·  从7亿到80亿,从影院冷清到票房飞驰 ...·  11 月前    · 
英俊的铁板烧  ·  云tv授权码 - 抖音·  1 年前    · 
Code  ›  带有迭代器请求的gRPC python上的数据流,但得到“异常迭代请求!”开发者社区
python python函数 grpc 迭代器
https://cloud.tencent.com/developer/ask/sof/106542627
兴奋的玉米
6 月前
首页
学习
活动
专区
工具
TVP 最新优惠活动
返回腾讯云官网
提问

问 带有迭代器请求的gRPC python上的数据流,但得到“异常迭代请求!”

Stack Overflow用户
提问于 2021-12-21 10:25:40
EN

我试图使用gRPC python进行双向流通信,但是客户端请求中存在一些问题.

这是我的心得:

代码语言: javascript
复制
service ABC {
    rpc DataTransmission (stream DataTransmissionRequest) returns (stream DataTransmissionResponse);
message DataTransmissionRequest {
    bytes data = 1;
    string ticket = 2;
message DataTransmissionResponse {
    bytes data = 1;
}

下面是我的客户端代码,用于生成迭代器请求并调用dataTransmission函数

代码语言: javascript
复制
def generateRequests():
        req_msgs = [
            (b"123", "sySJZDV9Rb8dyqt1"),
            (b"123"),
            (b"123"),
            (b"123"),
            (b"123"),
            (b"123"),
        iter = 0
        for (req, ticket) in req_msgs:
            print("(req, ticket) = ", (req, ticket))
            if iter == 0:
                request = ABC_pb2.DataTransmissionRequest(data=req, ticket=ticket)
            else:
                request = ABC_pb2.DataTransmissionRequest(data=req)
            iter += 1
            print("iter = ", iter)
            yield request
    #my_queue = queue.SimpleQueue()
    with grpc.insecure_channel(addr) as channel:
        stub = ABC_pb2_grpc.ServiceProxyStub(channel)
        data_transmission_resp = stub.DataTransmission(generateRequests())
        print("data_transmission_resp = ", data_transmission_resp)
        ##print("data_transmission_resp = ", list(data_transmission_resp))
        ## use the results
        for data_trans in data_transmission_resp:
            print(data_trans)

但得到了错误

代码语言: javascript
复制
grpc._channel._MultiThreadedRendezvous: <_MultiThreadedRendezvous of RPC that terminated with:
        status = StatusCode.UNKNOWN
        details = "Exception iterating requests!"
 
推荐文章
逼格高的铅笔  ·  比利时1991青春期男孩女孩教育片 - 抖音
4 月前
力能扛鼎的抽屉  ·  触乐夜话:无名者_腾讯新闻
7 月前
正直的刺猬  ·  交通不便成区域发展短板 沈阳地铁9号线北延线已进入初审批复|9号线|于洪区|公交线路|初审批复|北延线|地铁号线|沈阳地铁|沈阳市|蒲河|轨道交通_手机网易网
8 月前
想出国的钥匙扣  ·  从7亿到80亿,从影院冷清到票房飞驰 热辣滚烫春节档的蝶变-新华网
11 月前
英俊的铁板烧  ·  云tv授权码 - 抖音
1 年前
今天看啥   ·   Py中国   ·   codingpro   ·   小百科   ·   link之家   ·   卧龙AI搜索
删除内容请联系邮箱 2879853325@qq.com
Code - 代码工具平台
© 2024 ~ 沪ICP备11025650号