dubbo接口测试
window下使用telnet請求dubbo接口:
1、windows添加telnet
? ? ?控制面板——》程序和功能——》打開或關閉windows功能——》安裝Telnet客戶端
2、cmd打開Windows控制臺;
3、使用telnet命令打開控制臺:telnet ip 端口號? 例如:telnet IP 端口號
4、打開telnet控制臺后,回車,出現dubbo>,
5、使用invoke命令注入,命令:服務名.方法名(參數) ,回車后即可請求dubbo接口
如果注入的是json
那就直接傳入json串就ok了,如果是基礎數據類型,也可以分別對應參數直接傳
invoke XxxService.xxxMethod({“prop”: “value”}, 1, “1”)
如果注入的是對象(com.cn.Test。具體的方法名:test(List tList))
對象,我們也是按照json的格式傳,只不過在每個對象后都需要指定具體的這個對象具體所屬的類型。
invoke XxxService.xxxMethod([{“key”:“11”,“merchantId”:“888”,“skuId”:“111”,“class”:“com.cn.Test”}])
python使用telnet請求dubbo接口
telnetlib為python自帶模塊,無需安裝,可直接使用,具體代碼如下 import telnetlib, jsonclass Dubbo(telnetlib.Telnet):
prompt = 'dubbo>'
coding = 'gbk'
def __init__(self, host=None, port=0):
super().__init__(host, port)
self.write(b"\n")
def command(self, flag, str_=""):
data = self.read_until(flag.encode()) #輸入 dubbo>
self.write(str_.encode('gbk') + b"\n") #輸入 invoke 服務名.方法名(參數) 加回車
return data
def invoke(self, service_name, method_name, arg):
command_str = "invoke {0}.{1}({2})".format(service_name, method_name, arg) #組裝invoke 服務名.方法名(參數)
print(command_str)
self.command(Dubbo.prompt, command_str)
data = self.command(Dubbo.prompt, "\n")
print(data)
data = json.loads(data.decode(Dubbo.coding, errors='ignore').split('\n')[0].strip())
return data
if __name__ == '__main__':
conn = Dubbo('IP', 端口號) #建立telnet連接
name = "雙溪漂流旅游旗艦店"
result = conn.invoke(
"服務名",
"方法名",
{'appKey': '21330348',
'nick': name,
'deleted': 'F'
}
)
print('*****************以下是接口返回結果*****************')
print(result)
轉載于:https://www.cnblogs.com/qianhying/p/10636678.html
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
- 上一篇: 接口练习题(书信接口)
- 下一篇: 2019南昌网络赛-I(单调栈+线段树)