我创建了一个小SimpleXMLRPCServer来检查客户机的ip。在
我试试这个:
导入xmlrpclib
从SimpleXMLRPCServer导入SimpleXMLRPCServer
server=SimpleXMLRPCServer((“localhost”,8000))
def MyIp(): return“您的ip是:%s”%server.socket.getpeername()
在server.register_函数(我的IP)
在永远服侍你()
导入xmlrpclib
se=xmlrpclib.服务器(“http://localhost:8000”)
打印东南MyIp()
在xmlrpclib.故障::(107,“传输终结点未连接”)“>
如何使客户机地址对所有功能可见?在
例如,如果希望将}前置到params元组,然后将其余的委托给
client_address
作为第一个参数传递给每个函数,则可以将SimpleXMLRPCRequestHandler子类(在实例化SimpleXMLRPCServer时将子类作为处理程序传递)并重写_dispatch
(将{SimpleXMLRPCRequestHandler._dispatch
)。如果这种方法是可行的,你想看到代码,只要问!在我不确定您如何安全地使用除“使
client_address
可见”的函数参数之外的任何东西都没有client_address
作为一个裸名,全局的或其他的,只有请求处理程序类的每个实例的self.client_address
(并且诸如将其复制到全局变量之类的黑客操作在线程处理下确实让人觉得不舒服而且不安全,等等)。在相关问题 更多 >
编程相关推荐