11import json
22from urllib .parse import urlparse
3+
34# pip
45import requests
56# local
6- from .common import (check_response ,
7- log_request_exception ,
8- log_json_decode )
7+ from .common import (check_response , log_json_decode ,
8+ log_request_exception )
99
1010
1111class Server (object ):
12+
1213 def __init__ (self , protocol , host , version = None ):
1314 url = '{0:s}://{1:s}' .format (protocol , host )
1415 if version :
@@ -21,6 +22,7 @@ def __init__(self, protocol, host, version=None):
2122
2223
2324class Client (object ):
25+
2426 def __init__ (self , server : Server , timeout = 30 ):
2527 self .SERVER = server
2628 self .TIMEOUT = timeout
@@ -42,17 +44,25 @@ def post(self, url, headers, data):
4244
4345 def _request (self , method , url , headers , params = None , data = None ):
4446 try :
45- data = json . dumps (data ) if data else data
47+ data = self . _encode_data (data )
4648 response = requests .request (
47- method , url , headers = headers , params = params , data = data ,
48- verify = True , timeout = self .TIMEOUT
49- )
49+ method ,
50+ url ,
51+ headers = headers ,
52+ params = params ,
53+ data = data ,
54+ verify = True ,
55+ timeout = self .TIMEOUT )
5056 response .raise_for_status ()
5157 return response
5258 except requests .exceptions .RequestException as err :
5359 log_request_exception (err )
5460 raise
5561
62+ def _encode_data (self , data ):
63+ data = json .dumps (data ) if data else data
64+ return data
65+
5666 def _resp_to_json (self , response ):
5767 try :
5868 json_resp = response .json ()
@@ -71,4 +81,4 @@ def url_for(self, path, path_arg=None):
7181 def url_path_for (self , path , path_arg = None ):
7282 url = self .url_for (path , path_arg )
7383 path = urlparse (url ).path
74- return url , path
84+ return url , path
0 commit comments