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. ASP動(dòng)態(tài)網(wǎng)頁(yè)制作技術(shù)經(jīng)驗(yàn)分享2. jsp實(shí)現(xiàn)登錄驗(yàn)證的過(guò)濾器3. Xml簡(jiǎn)介_(kāi)動(dòng)力節(jié)點(diǎn)Java學(xué)院整理4. jsp文件下載功能實(shí)現(xiàn)代碼5. 如何在jsp界面中插入圖片6. JSP之表單提交get和post的區(qū)別詳解及實(shí)例7. 詳解瀏覽器的緩存機(jī)制8. vue3+ts+elementPLus實(shí)現(xiàn)v-preview指令9. .Net加密神器Eazfuscator.NET?2023.2?最新版使用教程10. phpstudy apache開(kāi)啟ssi使用詳解
