commit | 6aae60efbe49d3fcf3a93bece5dd97e48460b5e3 | [log] [tgz] |
---|---|---|
author | 侯锐 <hourui@qianmi.com> | Tue Jun 26 11:49:26 2018 +0800 |
committer | 侯锐 <hourui@qianmi.com> | Tue Jun 26 11:49:26 2018 +0800 |
tree | fd8a2927b6c37309cb9c100d1f9ac96061d42e2e | |
parent | 6bf50c72f73fb97168777a937f9e3610d6094188 [diff] |
添加对千米标准商品查询的测试
Python Dubbo Client.
pip install python-dubbo
from dubbo.client import DubboClient, ZkRegister # 支持从Zk中获取服务的provider,支持根据provider的权重选择主机 zk = ZkRegister('127.0.0.1:2181') dubbo_cli = DubboClient('com.qianmi.pc.api.GoodsQueryProvider', zk_register=zk) # 支持不使用Zk,直接连接指定的远程主机 dubbo_cli = DubboClient('com.qianmi.pc.api.GoodsQueryProvider', host='127.0.0.1:20880') admin_id = 'A000000' result = dubbo_cli.call('listByIdString', admin_id)
python-dubbo支持以下Java类型的参数:
# 使用Java的对象类型 from dubbo.client import DubboClient, ZkRegister from dubbo.codec.encoder import Object # 创建channel对象 channel = Object('com.qianmi.pc.base.api.constants.ChannelEnum') channel['name'] = 'D2C' # 创建spu_query_request对象 spu_query_request = Object('com.qianmi.pc.item.api.spu.request.SpuQueryRequest') spu_query_request['chainMasterId'] = 'A000000' spu_query_request['channel'] = channel spu_query_request['pageSize'] = 2000 # 创建consumer并执行查询操作 zk = ZkRegister('172.21.4.71:2181') spu_query_provider = DubboClient('com.qianmi.pc.item.api.spu.SpuQueryProvider', zk_register=zk) result = spu_query_provider.call('query', spu_query_request)
# 定义一个枚举类型的对象 channel = Object('com.qianmi.pc.base.api.constants.ChannelEnum') # 定义参数`name`的值为枚举参数,之后使用该对象作为参数即可 channel['name'] = 'D2C'