如何搭建Python的Web Service

1 配置环境

conda create -n webservice python=3.6
activate webservice
pip install jupyter
pip install spyne
pip install client
pip install suds-py3

1.1快速访问到指定的位置

d:
cd D:\PythonProject\WebService
activate webservice
ipython notebook

 

2.运行demo

2.1服务器端

from spyne import Application, rpc, ServiceBase
from spyne import Integer, Unicode, Array, ComplexModel
from spyne.protocol.soap import Soap11
from spyne.server.wsgi import WsgiApplication
from wsgiref.simple_server import make_server
import sys

class SomeSampleServices(ServiceBase):
    @rpc(Unicode, Unicode, _returns=Unicode)
    def make_project(self, name, version):
        pass
        print('Client name is %s'%(name))
        print('Client version is %s'%(version))    
        serverSay = '我是服务器,我的ip是localhost,端口号是9899,我对客户端%s进行了一次服务...,并且向客户端返回了计算结果2333'%(name)
        print(serverSay)
        tmpStr = '服务器向客户端返回的结果是%d'%(2333)
        return tmpStr 

if __name__ == "__main__":
    soap_app = Application([SomeSampleServices],
                           'SampleServices',
                           in_protocol=Soap11(validator="lxml"),
                           out_protocol=Soap11())
    wsgi_app = WsgiApplication(soap_app)
    ip = 'localhost'
    port = 9899
    server = make_server(ip, port, wsgi_app) 
    sys.exit(server.serve_forever())

2.1客户端

from suds.client import Client
ip = 'localhost'
port = 9899
client = Client("http://%s:%s/?wsdl" % (ip, port))

ret = client.service.make_project("Test", "1.0.0")
print(ret)

 

 

posted @ 2019-08-01 11:11  bH1pJ  阅读(96)  评论(0编辑  收藏  举报