def build_req_inter(self, action, params, req_inter): _params = copy.deepcopy(params) _params['Action'] = action[0].upper() + action[1:] _params['RequestClient'] = self.version if (_params.has_key('SecretId') != True): _params['SecretId'] = self.secretId if (_params.has_key('Nonce') != True): _params['Nonce'] = random.randint(1, sys.maxint) if (_params.has_key('Timestamp') != True): _params['Timestamp'] = int(time.time()) if (_params.has_key('SignatureMethod') != True): if self.sign_method == 'sha256': _params['SignatureMethod'] = 'HmacSHA256' else: _params['SignatureMethod'] = 'HmacSHA1' sign = Sign(self.secretId, self.secretKey) _params['Signature'] = sign.make(self.host, req_inter.uri, _params, req_inter.method, self.sign_method) req_inter.data = urllib.urlencode(_params) self.build_header(req_inter)
def send(self, requestHost, requestUri, params, files={}, method='GET', debug=0): requests.packages.urllib3.disable_warnings() params['RequestClient'] = Request.version sign = Sign(self.secretId, self.secretKey) params['Signature'] = sign.make(requestHost, requestUri, params, method) url = 'https://%s%s' % (requestHost, requestUri) if (method.upper() == 'GET'): req = requests.get(url, params=params, timeout=Request.timeout, verify=False) if (debug): print 'url:', req.url, '\n' else: req = requests.post(url, data=params, files=files, timeout=Request.timeout, verify=False) if (debug): print 'url:', req.url, '\n' if req.status_code != requests.codes.ok: req.raise_for_status() return req.text
def generateUrl(self, requestHost, requestUri, params, method = 'GET'): params['RequestClient'] = Request.version sign = Sign(self.secretId, self.secretKey) params['Signature'] = sign.make(requestHost, requestUri, params, method) params = urllib.urlencode(params) url = 'https://%s%s' % (requestHost, requestUri) if (method.upper() == 'GET'): url += '?' + params return url
def send(self, requestHost, requestUri, params, files = {}, method = 'GET', debug = 0): params['RequestClient'] = Request.version sign = Sign(self.secretId, self.secretKey) params['Signature'] = sign.make(requestHost, requestUri, params, method) url = 'https://%s%s' % (requestHost, requestUri) if (method.upper() == 'GET'): req = requests.get(url, params=params, timeout=Request.timeout) if (debug): print 'url:', req.url, '\n' else: req = requests.post(url, data=params, files=files, timeout=Request.timeout) if (debug): print 'url:', req.url, '\n' if req.status_code != requests.codes.ok: req.raise_for_status() return req.text