python 如何调用 dubbo 接口


Posted in Python onSeptember 24, 2020

公司后端服务使用 java 重构后,很多接口采用了阿里的 dubbo 协议。而 python 是无法直接调用 dubbo 接口的,但可以通过 telnet 调用,具体可以通过 telnetlib 模块的 Telnet类 来调用,只需要四行代码即可实现:

import telnetlib

# 创建telnet类对象
conn = telnetlib.Telnet()
# 连接dubbo接口地址
conn.open(host, port)
#1.cmd命令格式: 接口全名字.方法名(参数1,参数2,参数3...参数n) 2.write方法就是通过telnet发起dubbo请求,参数和单独使用telnet一致
conn.write('invoke {}\n'.format(cmd).encode())
# 获取telnet返回信息
conn.read_until('dubbo>'.encode()).decode().split('\r\n')[0]

分装成类:

class Dubbo(object):
  '''
  方法调用案例:
  conn = Dubbo('127.0.0.1', 18080)
  #格式: 接口全名字.方法名(参数1,参数2,参数3...参数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('\r\n')[0]

    return data

以上就是python 如何调用 dubbo 接口的详细内容,更多关于python 调用 dubbo 接口的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python基础教程之实现石头剪刀布游戏示例
Feb 11 Python
python利用MethodType绑定方法到类示例代码
Aug 27 Python
学习python中matplotlib绘图设置坐标轴刻度、文本
Feb 07 Python
对命令行模式与python交互模式介绍
May 12 Python
Python自动发送邮件的方法实例总结
Dec 08 Python
python http基本验证方法
Dec 26 Python
python实现栅栏加解密 支持密钥加密
Mar 20 Python
Python实现滑动平均(Moving Average)的例子
Aug 24 Python
Python:slice与indices的用法
Nov 25 Python
Python模块_PyLibTiff读取tif文件的实例
Jan 13 Python
tensorflow与numpy的版本兼容性问题的解决
Jan 08 Python
Python 发送SMTP邮件的简单教程
Jun 24 Python
python matplotlib绘制三维图的示例
Sep 24 #Python
python使用matplotlib:subplot绘制多个子图的示例
Sep 24 #Python
Django路由层URLconf作用及原理解析
Sep 24 #Python
Python xlrd/xlwt 创建excel文件及常用操作
Sep 24 #Python
安装并免费使用Pycharm专业版(学生/教师)
Sep 24 #Python
Pycharm学生免费专业版安装教程的方法步骤
Sep 24 #Python
python 多线程共享全局变量的优劣
Sep 24 #Python
You might like
解析php时间戳与日期的转换
2013/06/06 PHP
php实现编辑和保存文件的方法
2015/07/20 PHP
PHP编程实现阳历转换为阴历的方法实例
2017/08/08 PHP
JS的数组的扩展实例代码
2008/07/09 Javascript
简单实用的js调试logger组件实现代码
2010/11/20 Javascript
Javascript判断对象是否相等实现代码
2013/03/18 Javascript
javascript实现不同颜色Tab标签切换效果
2016/04/27 Javascript
JQuery 传送中文乱码问题的简单解决办法
2016/05/24 Javascript
jQuery实现响应鼠标事件的图片透明效果【附demo源码下载】
2016/06/16 Javascript
jQuery选择器实例应用
2017/01/05 Javascript
Bootstrap Table使用整理(二)
2017/06/09 Javascript
vue组件中的数据传递方法
2018/05/14 Javascript
如何从0开始用node写一个自己的命令行程序
2018/12/29 Javascript
JavaScript 正则应用详解【模式、欲查、反向引用等】
2020/05/13 Javascript
element-ui中dialog弹窗关闭按钮失效的解决
2020/09/22 Javascript
python发送arp欺骗攻击代码分析
2014/01/16 Python
Python 制作糗事百科爬虫实例
2016/09/22 Python
Python使用functools实现注解同步方法
2018/02/06 Python
python 读取鼠标点击坐标的实例
2018/12/29 Python
Python 读取串口数据,动态绘图的示例
2019/07/02 Python
python获取依赖包和安装依赖包教程
2020/02/13 Python
python爬虫看看虎牙女主播中谁最“顶”步骤详解
2020/12/01 Python
浅谈CSS3特性查询(Feature Query: @supports)功能简介
2017/07/31 HTML / CSS
美国照明、家居装饰和家具购物网站:Bellacor
2017/09/20 全球购物
美国在线鞋类零售商:LifeStride
2019/06/09 全球购物
商场经理竞聘演讲稿
2014/01/01 职场文书
优秀干部获奖感言
2014/01/31 职场文书
高级编程求职信模板
2014/02/16 职场文书
电焊工岗位职责
2014/03/06 职场文书
孩子教育的心得体会
2014/09/01 职场文书
学校运动会广播稿100条
2014/09/14 职场文书
2014年小学图书室工作总结
2014/12/09 职场文书
放弃遗产继承公证书
2015/01/26 职场文书
意外事故赔偿协议书
2016/03/22 职场文书
Nginx反爬虫策略,防止UA抓取网站
2021/03/31 Servers
详解MySQL中的pid与socket
2021/06/15 MySQL