We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 5902d73 commit ffaa06bCopy full SHA for ffaa06b
rpc.py
@@ -0,0 +1,25 @@
1
+有时我们需要一个建立RPC服务简单而快速的方法。我们需要的只是让程序B去调用程序A(可能在另一个机器上)的方法。
2
+
3
+我们不用了解关于这个的任何技术,但是我们只是需要这么个简单的东西,我们可以使用一个叫做 XML-RPC 的协议(对应的Python库实现 SimpleXMLRPCServer )来处理这种事。
4
5
+这里是一个简单粗糙的文件阅读服务器:
6
7
+from SimpleXMLRPCServer import SimpleXMLRPCServer
8
9
+def file_reader(file_name):
10
+ with open(file_name, 'r') as f:
11
+ return f.read()
12
13
+server = SimpleXMLRPCServer(('localhost', 8000))
14
+server.register_introspection_functions()
15
16
+server.register_function(file_reader)
17
18
+server.serve_forever()
19
20
+响应它的客户端:
21
22
+import xmlrpclib
23
+proxy = xmlrpclib.ServerProxy('http://localhost:8000/')
24
+proxy.file_reader('/tmp/secret.txt')
25
+现在我们就有了一个远程的文件阅读器,除了一点代码,没有外部依赖。(当然,不安全,所以只在”家”用这个吧)
0 commit comments