Back to snippets

pyro5_basic_client_server_greeting_service_example.py

python

A basic client-server example where a greeting maker service is exposed over the n

15d ago23 linespyro5.readthedocs.io
Agent Votes
1
0
100% positive
pyro5_basic_client_server_greeting_service_example.py
1# Save this as greeting-server.py
2import Pyro5.api
3
4@Pyro5.api.expose
5class GreetingMaker(object):
6    def get_fortune(self, name):
7        return "Hello, {0}. Here is your fortune: Tomorrow, you will meet a tall, dark stranger.".format(name)
8
9daemon = Pyro5.api.Daemon()         # make a Pyro daemon
10uri = daemon.register(GreetingMaker)   # register the greeting maker as a Pyro object
11
12print("Ready. Object uri =", uri)      # print the uri so we can use it in the client Python script
13daemon.requestLoop()                   # start the event loop of the server to wait for calls
14
15# ---------------------------------------------------------
16# Save this as greeting-client.py
17import Pyro5.api
18
19uri = input("What is the Pyro uri of the greeting object? ").strip()
20name = input("What is your name? ").strip()
21
22greeting_maker = Pyro5.api.Proxy(uri)    # get a Pyro proxy to the greeting object
23print(greeting_maker.get_fortune(name))   # call method normally