2013-11-22 57 views
4

我正在使用suds包来从一个网站发出API请求。我写了一个功能,打开了网站client并提出请求。Python Suds.Client是否应该关闭

我想知道应该我还是该如何在函数结束时终止连接?

我想知道将client是这样的MySQLDb.connect,实际上打开了,每次从来没有接近我调用该函数很多很多不同的API连接。

from suds.client import Client 
import sys, re 

def querysearch(reqPartNumber, reqMfg, lock): 
    try: 
     client = Client('http://app....') 
     userInfo = {'id':.., 'password':...} 
     apiResponse = client.service.getParts(...) 
     ... 
     print apiResponse 
    except: 
     ... 

回答

5

SOAP仍然是一个HTTP请求,它是无状态的。每个请求都会启动一个全新的连接,re-auth等等。浏览器和cookies一样短路,但SOAP不是。所以,你不需要关闭连接,在suds将数据返回给你时,它已经关闭。

此外,looking at the latest source,Client()没有定义close__exit__方法,所以这里没有什么是你必须要做的。