[英]Python input interfering with SimpleXMLRPCServer
我有一台服務器,遵循以下原則:
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)解決方案。
您在應使用raw_input()
地方使用input()
raw_input()
。 嘗試這個:
return raw_input("Allow? ").lower() in ['y', 'yes']
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.