Re[2]: Middle tier для Python
От: DemAS http://demas.me
Дата: 09.04.09 13:05
Оценка:
> Soap, xml(или json)-rpc?

До XML-RPC я уже дошел
А не знаешь — эта технология позволет возвращать с сервера на клиент классы?

Сервер:

from SimpleXMLRPCServer import SimpleXMLRPCServer
from SimpleXMLRPCServer import SimpleXMLRPCRequestHandler

# Restrict to a particular path.
class RequestHandler(SimpleXMLRPCRequestHandler):
     rpc_paths = ('/RPC2',)

# Create server
server = SimpleXMLRPCServer(("localhost", 8000),
                             requestHandler=RequestHandler)
server.register_introspection_functions()

class MyClass:
     def __init__(self, a):
         self.a = a
     def say(self):
         return a

def return_my_class():
     return MyClass(100)

server.register_function(return_my_class, 'my_class')

# Run the server's main loop
server.serve_forever()


Клиент:
import xmlrpclib

s = xmlrpclib.ServerProxy('http://localhost:8000')

o = s.my_class()
print o
o.say()


Вывод:

{'a': 100}
Traceback (most recent call last):
File "rpc_client.py", line 7, in <module>
o.say()


Я кончено понимаю, что я могу на сервере сериализовать класс в список, а
на клиенте из списка восстановить класс, но не хочется изобретать
велосипед.
Posted via RSDN NNTP Server 2.1 beta
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.