@@ -165,7 +165,7 @@ def _get_status_url(self):
165165 def tenant (self , tenant_id ):
166166 self .tenant_id = tenant_id
167167
168- def _http (self , url , method , data = None , decoder = None ):
168+ def _http (self , url , method , data = None , decoder = None , parse_json = True ):
169169 res = None
170170 req = Request (url = url )
171171 req .add_header ('Content-Type' , 'application/json' )
@@ -193,10 +193,13 @@ def _http(self, url, method, data=None, decoder=None):
193193 req .get_method = lambda : method
194194 res = urlopen (req , context = self .context )
195195
196- if res .getcode () == 200 :
197- data = json .load (reader (res ), cls = decoder )
198- elif res .getcode () == 204 :
199- data = {}
196+ if parse_json :
197+ if res .getcode () == 200 :
198+ data = json .load (reader (res ), cls = decoder )
199+ elif res .getcode () == 204 :
200+ data = {}
201+ else :
202+ data = reader (res ).read ()
200203
201204 return data
202205
@@ -211,7 +214,7 @@ def _put(self, url, data):
211214 return self ._http (url , 'PUT' , data )
212215
213216 def _delete (self , url ):
214- return self ._http (url , 'DELETE' )
217+ return self ._http (url , 'DELETE' , parse_json = False )
215218
216219 def _post (self , url , data ):
217220 return self ._http (url , 'POST' , data )
0 commit comments