python中的xmlrpc客户机调用不为b

2024-04-19 23:52:58 发布

您现在位置:Python中文网/ 问答频道 /正文

使用Python2.6.4,windows

通过下面的脚本,我想测试某个xmlrpc服务器。我调用一个不存在的函数,并希望返回一个错误。相反,函数不返回。原因是什么?在

import xmlrpclib
s = xmlrpclib.Server("http://127.0.0.1:80", verbose=True)
s.functioncall()

输出为:

^{pr2}$

(在这里,程序挂起,直到我关闭服务器才返回)

编辑:服务器是用c++编写的,使用它自己的xmlrpc库

编辑:发现一个看起来与相同问题http://bugs.python.org/issue1727418


Tags: 函数import服务器脚本truehttp编辑verbose
2条回答

最有可能的是,您正在测试的服务器在将响应发送回客户端后不会关闭TCP连接。因此,客户端挂起,等待服务器关闭连接,然后才能从函数返回。在

在服务器1.1中,你没有发现这个错误。Python在2.7和3.2中有一个针对这种有缺陷服务器的解决方法,请参见this issue,但2.6.4中没有这种解决方法。不幸的是,从2.6.5的NEWS.txt看来我们也没有把它后传到2.6.5。2.7中的解决方法的补丁是here,如果不可能修复有缺陷的服务器,也许你可以尝试将它应用到2.6.5中。。。?在

相关问题 更多 >