Python中文
首页
教程
问答
标签
搜索
登录
注册
python gRPC需要上下文参数
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我刚开始使用gRPC,在阅读了入门指南之后,我尝试实现一个简单的python服务。但是当我调用我的客户机调用时,python要求提供一个上下文参数。为什么我的代码需要在示例中不需要上下文对象时提供它?在</p> <p>另外,我开始尝试创建自己的具体上下文子类,但不确定它应该如何实现。我已经添加了我的开始,但如果可能的话,我会非常感谢你的一个例子</p> <p>谢谢!在</p> <p><strong>原型文件</strong></p> <pre><code>syntax = "proto2"; package parsefile; service ParseFile { rpc SendFile (File) returns (Empty) {} } message File { message MetaData { optional string file_name = 1; optional string file_path = 2 [default = '.']; optional string mime_type = 3 [default = 'application/pdf']; } message Source { optional string title = 1; optional int32 id = 2; } optional MetaData document = 1; optional Source supplier = 2; } message Empty { } </code></pre> <p><strong>服务器</strong></p> ^{pr2}$ <p><strong>客户</strong></p> <pre><code>import grpc import parsefile_pb2_grpc import parsefile_pb2 def get_file_info(): return parsefile_pb2.File( document = parsefile_pb2.File.MetaData( file_name = 'example.txt' ), supplier = parsefile_pb2.File.Source( title = 'Example Supplier' ) ) def run(): channel = grpc.insecure_channel('localhost:50051') stub = parsefile_pb2_grpc.ParseFileStub(channel) context = RequestContext() print('object created') response = stub.SendFile(get_file_info()) print('File info sent to server') if __name__ == '__main__': run() </code></pre> <p><strong>错误跟踪</strong></p> <pre><code>Traceback (most recent call last): File "parse_client.py", line 60, in <module> run() File "parse_client.py", line 56, in run response = stub.SendFile(get_file_info(), 2) File "/Users/davidbowe/.virtualenvs/post/lib/python3.6/site-packages/grpc/_channel.py", line 507, in __call__ return _end_unary_response_blocking(state, call, False, deadline) File "/Users/davidbowe/.virtualenvs/post/lib/python3.6/site-packages/grpc/_channel.py", line 455, in _end_unary_response_bl ocking raise _Rendezvous(state, None, None, deadline) grpc._channel._Rendezvous: <_Rendezvous of RPC that terminated with (StatusCode.UNKNOWN, Exception calling application: SendF ile() missing 1 required positional argument: 'context')> </code></pre>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>您不需要创建<code>context</code>参数,它是由grpc自动创建的。在</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
plt.savefig不会覆盖现有文件
5 回答
plt.savefig不保存图像
1 回答
plt.savefig在jupyter笔记本中不起作用
1 回答
plt.savefig在从另一个fi调用时停止工作
8 回答
plt.savefig在调用plt.show之前保存空数字
1 回答
plt.save不创建png文件
3 回答
plt.scatter overlay分类数据帧列
10 回答
Plt.Scatter:如何添加title、xlabel和ylab
8 回答
plt.scatter()绘图与Matplotlib中的plt.plot()绘图类似
7 回答
plt.scatter错误'NoneType'对象在成功运行后没有属性'sqrt'
5 回答
plt.set_title()中的标题字符串有误
6 回答
plt.show()
7 回答
plt.show()不在Jupyter笔记本上渲染任何内容
6 回答
plt.show()不打印plt.plot only plt.scatter
10 回答
plt.show()不显示三维散射图像
3 回答
plt.show()不显示任何内容
6 回答
plt.show()不显示数据,而是保留它供下一个图表使用(spyder)
5 回答
plt.show()使终端挂起
7 回答
plt.show()无法使用此代码
6 回答
plt.show()没有打开新的图形风
10 回答