python編寫webservice(webapp)Helloworld

原文鏈接:https://www.cnblogs.com/412013cl/p/9262519.html

一個簡單的webservice spyne和suds簡單使用

 https://www.cnblogs.com/412013cl/p/9262519.html

1

 

testservice.py

 

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

from spyne import ServiceBase, Iterable, Unicode, Integer, Application, rpc

from spyne.protocol.soap import Soap11

from spyne.server.wsgi import WsgiApplication

 

 

class HelloWorldService(ServiceBase):

    @rpc(Unicode, Integer, _returns=Iterable(Unicode))

    def say_hello(ctx, name, times):

        for in range(times):

            yield 'Hello, %s' % name

 

application = Application([HelloWorldService],

                          tns='spyne.examples.hello',

                          in_protocol=Soap11(validator='lxml'),

                          out_protocol=Soap11())

if __name__ == '__main__':

    from wsgiref.simple_server import make_server

    wsgi_app = WsgiApplication(application)

    server = make_server('0.0.0.0'8000, wsgi_app)

    server.serve_forever()

 

 testclient.py

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

from suds.client import Client

 

wsdl_url = "http://localhost:8000/?wsdl"

 

 

def say_hello_test(url, name, times):

    client = Client(url)

    client.service.say_hello(name, times)

    req = client.last_sent()

    response = client.last_received()

    print(req.str())

    print(response.str())

 

 

if __name__ == '__main__':

    say_hello_test(wsdl_url, 'test'2)

  

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章