我有这样的服务器:
from SimpleXMLRPCServer import SimpleXMLRPCServer
def ack(msg):
return input("Allow? ").lower() in ['y', 'yes']
server = SimpleXMLRPCServer(("localhost", 8080))
server.register_function(ack, "ack")
server.serve_forever()
还有一个客户:
import xmlrpclib
proxy = xmlrpclib.ServerProxy("http://localhost:8080")
with open(myfile) as mfd:
for line in mfd.readlines():
if proxy.ack(line):
print line
这会导致向客户端发送故障。故障代码和字符串为:
1
<type 'exceptions.NameError'>:name 'y' is not defined
我的假设是服务器端的过度消耗input
正在扼杀 POST XML-RPC 的优点。
我不想用两个客户端和一个服务器编写一些方法——我有点喜欢我正在进行的简单的 1:1 设置。
真的,我对任何替代(python)解决方案持开放态度。