Python调用WebService接口实例说明
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
baseViewController.GET(self) param = web.input() ctxdata = get_ctx()
myparams={} myparams["in0"] = param['in0'] myparams["in1"] = param['in1'] myparams["in2"] = param['in2'] result = role_face_command.execute(**myparams) result_role = {
render = get_modulerender('customer/view/role_test') if render:
return platLayout(render(get_ctx(),params,{})) #使用框架本身的 layout,只有一个参数为页面模板
else: return "This is Module customer."
alert("计算成功!");
jQuery("#resultຫໍສະໝຸດ Baidu).val(_data["value"]);
} });
}); }
retval = client.service.execute(in0 , in1, in2) print '---call webservice end' except Exception as e: retval = None reject = e
4、调用 @Face_Role_CrmWebService(set_client=None, set_options =None) def execute(resolve = None, reject = None,**args):
目前已对 WebService 做了接口封装,下面是接口封装的主要功能详解。其主要结构为: 1、 配置文件 [WebServiceConnection] set_client=http://127.0.0.1:8880/xfire/services/test?wsdl set_options=http://127.0.0.1:8880/xfire/services/test 2、 引用
#规则引擎测试 #/x/customer/role_test_action class role_test_action(baseViewController):
def POST(self):
def read_score(text): import xml.dom.minidom as DOM dom = DOM.parseString(text) score = dom.getElementsByTagName("score") return score[0].firstChild.data
Python 调用 Webservice 接口实例说明
1、 背景
1) 规则引擎通过配置完成业务规则逻辑计算,规则包定义时包括输入参数、传出参数。 配置完成后导出成 java 方法,打包成 war 包,并通过 tomcat 进行发布,形成 Webservice 服务供调用。
2) Python 平台或 java 程序通过调用 Webservice 服务完成业务逻辑计算。
3、示例
1、python 代码 #规则引擎测试 class role_test_page(baseViewController):
def GET(self): baseViewController.GET(self ) params = web.input()
#local_timeYMd = time.strftime('%Y%m%d', time.localtime(time.time())) #params['local_timeYMd'] = local_timeYMd
"value":str(read_score(result)) }
return json.dumps(result_role) 2、页面调用 //PageInit function PageInit() {
jQuery("#btn_convert").click(function(){
jQuery.ajax({ url: "/x/customer/role_test_action", type: "POST", data:{ in0 : jQuery('#in0').val(), in1 : jQuery('#in1').val(), in2 : jQuery('#in2').val() }, success: function(data){ var _data = eval("("+data+")");
python 类库的引用 from suds.client import Client 3、接口调用 try: #webservice client = Client(self.set_client); client.set_options(location=str(self.set_options))
print self.set_client print self.set_options
#in0 in0 = args['in0'] #in0 in1 = args['in1'] #in0 in2 = args['in2']
print args,'-------------------------' print in0, in1,in2
本文基于 Python 平台或 java 程序,假设规则引擎已经配置完毕并部署为 Webservice 服务供调用,由此展开。
2、介绍
WebService 接口调用目前使用的是 suds 库,Suds Web 服务客户端是一个轻量级的基于 SOAP 的 python 客户端。它基于 LGPL 许可。