python開發webservice例子

jopen 10年前發布 | 67K 次閱讀 WEB服務/RPC/SOA WebService

服務器段代碼:

import soaplib

from soaplib.core.server import wsgi from soaplib.core.service import DefinitionBase from soaplib.core.service import soap from soaplib.core.model.clazz import Array from soaplib.core.model.clazz import ClassModel from soaplib.core.model.primitive import Integer,String class C_ProbeCdrModel(ClassModel): namespace = "C_ProbeCdrModel" Name=String Id=Integer class AdditionService(DefinitionBase): #this is a web service @soap(Integer,Integer,_returns=String) def addition(self,a,b): print 'aaaaaaaaaaaa' return str(a)+'+'+str(b)+'='+str(a+b) @soap(_returns=Array(String)) def GetCdrArray(self): print 'bbbbbbbbbb' L_Result=["1","2","3"] return L_Result @soap(_returns=C_ProbeCdrModel) def GetCdr(self): print 'ccccccc' L_Model=C_ProbeCdrModel() L_Model.Name=L_Model.Name L_Model.Id=L_Model.Id return L_Model

if name=='main': try: print 'service start' from wsgiref.simple_server import make_server soap_application = soaplib.core.Application([AdditionService], 'tns') wsgi_application = wsgi.Application(soap_application) server = make_server('localhost', 7789, wsgi_application) server.serve_forever()

    except ImportError:
            print 'error'</pre> <p></p>

 

客戶端代碼:

__author__ = 'admin'
from suds.client import Client
test=Client('http://localhost:7789/SOAP/?wsdl')
print test
 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!