要呼叫rpc介面,python提供了乙個框架grpc,這是google開源的
程式設計客棧/basic/python.html
需要安裝的python包如下:
1.grpc安裝
pip install grpcio
2.grpc的python protobuf相關的編譯工具
pip install grpcio-tools
3.protobuf相關python依賴庫
pip install protobuf
4.一些常見原型的生成python類的集合:
pip install googleapis-common-protos
編譯protobuf檔案:使用以下命令生成python**:
python3 -m grpc_tools.protoc -i目標路徑目錄》 --python_out=. --grpc_python_out=目標檔案所在目錄路徑》 目標檔案data.proto>
python3 -m grpc_tools.protoc -i. --python_out=. --grpc_python_out=. data.proto
注意:protobuf檔案,為定義服務介面**檔案,這裡是data.proto
會生成:data_pb2.py 與 data_pb2_grpc.py
data_pb2.py是服務介面對映
data_pb2_grpc.py方法對映
protobuf內容示例:
www.cppcns.comsyntax = "pro程式設計客棧to3";
package grpcdemo;
message hellorequest
messagexpquyt helloreply
service grpc
}介面呼叫內容示例:
# -*- coding: utf-8 -*-
import grpc
impoxpquytrt data_pb2,data_pb2_grpc
_host = 'localhost'
_port = '8080'
def run():
conn = grpc.insecure_channel(_host + ':' + _port)
client = data_pb2_grpc.grpcstub(channel=conn)
response = client.sayhello(data_pb2.hellorequest(name='hello,world!'))
print("received: " + response.text)
if __name__ == '__main__':
run()
本文標題: 對python呼叫rpc介面的例項詳解
本文位址:
Python介面的實現與呼叫
對於物件導向程式設計來說,有三個概念一定要知道 封裝 繼承和多型。python本身就是一種多型語言,即不同的類中可以定義相同的方法 函式 名稱。所謂介面是一種特殊的類,宣告了若干方法,要求繼承該介面的類必須實現這些方法,否則會報錯。具體 實現如下 from abc import abcmeta,ab...
Python呼叫REST API介面的幾種方式彙總
相信做過自動化運維的同學都用過rest api介面來完成某些動作。api是一套成熟系統所必需的介面,可以被其他系統或指令碼來呼叫,這也是自動化運維的必修課。本文主要介紹python中呼叫rest api的幾種方式,下面是python中會用到的庫。url rac程式設計客棧kid asset impo...
rpc 方式呼叫webservice介面引數說明
最經在專案中用到 webservice介面呼叫問題 需要使用rpc方式去請求webservice 提供方法,在使用時中間出現一些問題 在此記錄備註 使用rpc方式呼叫webservice rpcserviceclient serviceclient new rpcserviceclient opti...