簡體   English   中英

錯誤:xmlrpclib.py中沒有屬性

[英]Fault: No Attribute in xmlrpclib.py

我正在開發其中正在創建服務器和客戶端的應用程序; ServerAPI使用SimpleXMLRPCServer,而ClientAPI使用xmlrpclib。 客戶端通過以下方式啟動:

class w_Client:
        def __init__(self, ServerIP, ServerPort, ClientIP):
                self.conn = xmlrpclib.ServerProxy("http://" + ServerIP + ":" + str(ServerPort))
                self.ClientIP = ClientIP

在應用程序中按下按鈕后,將創建一個xml規范文件並通過

        def Create(self, XMLstring):
            return self.conn.Create(XMLstring, self.ClientIP)

我已經檢查過以確保XMLstring是有效的XML。 但是,當我按下按鈕時,出現以下錯誤:

Traceback (most recent call last):

  File "/home/app/UI/MainWindow.py", line 461, in compile
    xmlFile = compiler.compile()
  File "/home/app/Core/Compiler.py", line 75, in compile
    self.compile_top()
  File "/home/app/Core/Compiler.py", line 354, in compile_top
    status = mainWidgets["w_client"].Create(xmlString)
  File "/home/app/Wireless/ClientAPI.py", line 12, in Create
    return self.conn.Create(XMLstring, self.ClientIP)
  File "/usr/lib/python2.7/xmlrpclib.py", line 1233, in __call__
    return self.__send(self.__name, args)
  File "/usr/lib/python2.7/xmlrpclib.py", line 1591, in __request
    verbose=self.__verbose
  File "/usr/lib/python2.7/xmlrpclib.py", line 1273, in request
    return self.single_request(host, handler, request_body, verbose)
  File "/usr/lib/python2.7/xmlrpclib.py", line 1306, in single_request
    return self.parse_response(response)
  File "/usr/lib/python2.7/xmlrpclib.py", line 1482, in parse_response
    return u.close()
  File "/usr/lib/python2.7/xmlrpclib.py", line 794, in close
    raise Fault(**self._stack[0])
xmlrpclib.Fault: <Fault 1: "<type 'exceptions.TypeError'>:'NoneType' object has no attribute '__getitem__'">

我還確保正確傳遞ClientIP。 否則,我不能完全確定發生了什么或者如何修復它。

<type 'exceptions.TypeError'>:'NoneType' object has no attribute '__getitem__'

您調用的xmlrpc方法(即服務器端)可能已生成此異常。

我建議您在服務器代理的實例中添加verbose=True

xmlrpclib.ServerProxy("http://" + ServerIP + ":" + str(ServerPort),verbose=True)

這將使您能夠查看正在發送和接收的內容。

您正在調用的方法似乎期望一個dict

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM