测试Suds客户端是否已超时

时间:2016-01-19 15:54:57

标签: python suds

我有一个使用SOAP从Web API下载数据的类。我想要做的是让类的实例在构造时实例化客户端,然后使用相同的客户端进行所有后续操作,除非连接超时。在这种情况下,它应该创建一个新的客户端。

该类发出多个请求,处理一些数据,然后根据数据处理结果继续发出后续请求。因此请求之间的时间可以变化很大。

有没有一种简单的方法来测试客户端是否超时?或者我最好将超时设置为非常长/为每个请求创建一个新客户端?

理想情况下,我希望能够这样:

from suds.client import Client
from suds.wsse import Security, UsernameToken

def create_client(self):

    if self.client.timed_out():

         token = UsernameToken(self.username, self.password)
         security = Security().tokens.append(token)
         client = Client(self.wsdl)
         client.set_options(wsse=security)

         self.client = client

0 个答案:

没有答案