Python 在SimpleXMLRPCServer上发送异常

Python 在SimpleXMLRPCServer上发送异常,python,exception,simplexmlrpcserver,Python,Exception,Simplexmlrpcserver,我试图在SimpleXMLRPCServer的服务器端引发异常;但是,所有尝试都会在客户端出现“故障1”异常 RPC_Server.AbortTest() 文件“C:\Python25\lib\xmlrpclib.py”,第1147行,在调用中 返回self.\u发送(self.\u名称,args) 文件“C:\Python25\lib\xmlrpclib.py”,第1437行,在请求中 verbose=self.\uuu verbose 请求中第1201行的文件“C:\Python25\lib

我试图在SimpleXMLRPCServer的服务器端引发异常;但是,所有尝试都会在客户端出现“故障1”异常

RPC_Server.AbortTest() 文件“C:\Python25\lib\xmlrpclib.py”,第1147行,在调用中 返回self.\u发送(self.\u名称,args) 文件“C:\Python25\lib\xmlrpclib.py”,第1437行,在请求中 verbose=self.\uuu verbose 请求中第1201行的文件“C:\Python25\lib\xmlrpclib.py” 返回self.\u解析\u响应(h.getfile(),sock) 文件“C:\Python25\lib\xmlrpclib.py”,第1340行,在_parse_响应中 返回u.close() 文件“C:\Python25\lib\xmlrpclib.py”,第787行,关闭 raise故障(**self.\u堆栈[0]) 错误::测试被RPC中止
请求“>

是,这是在服务器端引发异常时发生的情况。是否希望SimpleXMLRPCServer将异常返回到客户端

您只能使用可以通过XML封送的对象

  • 布尔值:真常量和假常量
  • 整数:直接传入
  • 浮点数:直接传入
  • 字符串:直接传入
  • 数组:任何包含一致元素的Python序列类型。数组作为列表返回
  • 结构:Python字典。键必须是字符串,值可以是任何符合条件的类型。可以传入用户定义类的对象;只传输它们的
    \uuu dict\uu
    属性
  • 日期:自历元(传入DateTime类的实例)或DateTime.DateTime实例以来的秒数
  • 二进制数据:传入二进制包装类的实例

如果您提出这样的异常:

raise Exception('Help!')
在服务器中,您在客户机中获得的异常的消息成员将与对原始异常执行str()相同,该异常以类型的字符串表示形式作为前缀

我得到的消息成员的结果是:

<type 'exceptions.Exception'>:Help!
:救命!
您当然可以解析它以获得所需的信息