2021-05-02 23:59
apacheの設定をします。mod_pythonで実行させる場合はお好みで設定してください。(だぶん動くと思う)
# apt-get update # apt-get install apache2
サーバのcgiプログラムを書きます。"/usr/lib/cgi-bin/test-svr.py"に755権限で配置します。
#!/usr/bin/python import os from SimpleXMLRPCServer import CGIXMLRPCRequestHandler class MyFuncs: def add(self, x, y): return x + y def arrays(self, x, y): return [x, y] handler = CGIXMLRPCRequestHandler() handler.register_instance(MyFuncs()) handler.register_introspection_functions() handler.handle_request()
クライアントのプログラムを書きます。
#!/usr/bin/python import xmlrpclib server = xmlrpclib.ServerProxy('http://localhost/cgi-bin/test-svr.cgi') list = server.system.listMethods() print list res = server.add(9, 3) print res print res = server.arrays(9, 3) print res for i in res: print i print
クライアントプログラムを実行します。
$ python test-cl.py ['add', 'arrays', 'system.listMethods', 'system.methodHelp', 'system.methodSignature'] 12 [9, 3] 9 3