python 如何調(diào)用 dubbo 接口
公司后端服務(wù)使用 java 重構(gòu)后,很多接口采用了阿里的 dubbo 協(xié)議。而 python 是無(wú)法直接調(diào)用 dubbo 接口的,但可以通過(guò) telnet 調(diào)用,具體可以通過(guò) telnetlib 模塊的 Telnet類(lèi) 來(lái)調(diào)用,只需要四行代碼即可實(shí)現(xiàn):
import telnetlib# 創(chuàng)建telnet類(lèi)對(duì)象conn = telnetlib.Telnet()# 連接dubbo接口地址conn.open(host, port)#1.cmd命令格式: 接口全名字.方法名(參數(shù)1,參數(shù)2,參數(shù)3...參數(shù)n) 2.write方法就是通過(guò)telnet發(fā)起dubbo請(qǐng)求,參數(shù)和單獨(dú)使用telnet一致conn.write(’invoke {}n’.format(cmd).encode())# 獲取telnet返回信息conn.read_until(’dubbo>’.encode()).decode().split(’rn’)[0]
分裝成類(lèi):
class Dubbo(object): ’’’ 方法調(diào)用案例: conn = Dubbo(’127.0.0.1’, 18080) #格式: 接口全名字.方法名(參數(shù)1,參數(shù)2,參數(shù)3...參數(shù)n) cmd = ’xxx.xxx.xx.xxxx.xxxx.xxxx.xxxx(268,'sz',1587288615000,1587634215000,0,10)’ response = json.loads(conn.reuqest(cmd)) ’’’ dubbo = ’dubbo>’ def __init__(self,host,port): self.conn = telnetlib.Telnet() self.conn.open(host, port) def request(self,cmd): self.conn.write(’invoke {}n’.format(cmd).encode()) data = self.conn.read_until(self.dubbo.encode()).decode().split(’rn’)[0] return data
以上就是python 如何調(diào)用 dubbo 接口的詳細(xì)內(nèi)容,更多關(guān)于python 調(diào)用 dubbo 接口的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!
相關(guān)文章:
1. docker鏡像完全卸載的操作步驟2. IntelliJ IDEA導(dǎo)入jar包的方法3. 使用Maven 搭建 Spring MVC 本地部署Tomcat的詳細(xì)教程4. IntelliJ IDEA配置Tomcat服務(wù)器的方法5. idea刪除項(xiàng)目的操作方法6. IntelliJ IDEA設(shè)置自動(dòng)提示功能快捷鍵的方法7. IntelliJ IDEA安裝插件的方法步驟8. IntelliJ IDEA調(diào)整字體大小的方法9. idea打開(kāi)多個(gè)窗口的操作方法10. idea導(dǎo)入maven項(xiàng)目的方法

網(wǎng)公網(wǎng)安備