2014-03-18 3 views
8

이 질문이 하나와 유사한 :SUD가 "sudo 0.4.1 jurko 5"이상에서 생성/수신하고 있는지 검사 할 수 있습니까?

How can I output what suds is generating/receiving?

문제는 내가 suds fork by Jurko 이후 버전을 사용하고 있습니다 "0.4.1은 jurko 5"가 Client.last_sent()Client.last_received() 방법이 제거 된 것입니다. 따라서 문제는 새로운 비눗물 버전에서 어떻게 기능을 대체 할 수 있는가하는 것입니다.

추신. 디버깅 수준을 낮출 수 있지만 가능하면 입력/출력을 프로그래밍 방식으로 검사 할 수 있으면 좋겠다.

답변

12

from suds.plugin import MessagePlugin 

class LogPlugin(MessagePlugin): 
    def sending(self, context): 
    print(str(context.envelope)) 
    def received(self, context): 
    print(str(context.reply)) 

client = Client("http://localhost/wsdl.wsdl", plugins=[LogPlugin()]) 
을 수행 할 MessagePlugin을 사용할 수 있습니다